এই প্রবন্ধে, আমরা বুঝব কিভাবে রিকারশন ব্যবহার করে শক্তি গণনা করা যায়। একটি পুনরাবৃত্ত ফাংশন হল একটি ফাংশন যা একটি নির্দিষ্ট শর্ত সন্তুষ্ট না হওয়া পর্যন্ত নিজেকে একাধিকবার কল করে৷
একটি পুনরাবৃত্ত ফাংশন হল একটি ফাংশন যা একটি নির্দিষ্ট শর্ত সন্তুষ্ট না হওয়া পর্যন্ত নিজেকে একাধিকবার কল করে৷
Recursion হল একটি স্ব-অনুরূপ উপায়ে আইটেম পুনরাবৃত্তি করার প্রক্রিয়া। প্রোগ্রামিং ভাষায়, যদি একটি প্রোগ্রাম আপনাকে একই ফাংশনের ভিতরে একটি ফাংশন কল করার অনুমতি দেয়, তাহলে তাকে ফাংশনের একটি পুনরাবৃত্ত কল বলা হয়।
অনেক প্রোগ্রামিং ল্যাঙ্গুয়েজ স্ট্যাকের মাধ্যমে পুনরাবৃত্তি বাস্তবায়ন করে। সাধারণত, যখনই একটি ফাংশন (কলার) অন্য একটি ফাংশন (ক্যালি) বা নিজেকে কলী হিসাবে কল করে, কলারের ফাংশনটি এক্সিকিউশন কন্ট্রোল ক্যালিতে স্থানান্তর করে। এই স্থানান্তর প্রক্রিয়ায় কিছু ডেটাও অন্তর্ভুক্ত থাকতে পারে যা কলার থেকে কলকারীর কাছে পাঠানো হয়৷
নীচে একই -
এর একটি প্রদর্শন রয়েছে৷ইনপুট
ধরুন আমাদের ইনপুট হল −
Enter the number and its power 2 and 5
আউটপুট
কাঙ্খিত আউটপুট হবে −
The result of 2^5 is 32
অ্যালগরিদম
Step 1 - START Step 2 - Declare three integer values namely my_power, my_input and result Step 3 - Read the required values from the user/ define the values Step 4 - A recursive function ‘getPower is defined which takes two integer as input and returns the product value of the input value with itself ‘my_power’ number of times. Step 5 - The function is called recursively until the value of ‘my_power’ is greater than 0. Store the result. Step 6 - Display the result Step 7 - Stop
উদাহরণ 1
এখানে, একটি প্রম্পটের উপর ভিত্তি করে ব্যবহারকারী দ্বারা ইনপুট প্রবেশ করানো হচ্ছে। আপনি আমাদের কোডিং গ্রাউন্ড টুলে এই উদাহরণটি লাইভ চেষ্টা করতে পারেন ।
import java.util.Scanner; public class Power { public static void main(String[] args) { int my_power, my_input, result; my_input = 2; my_power = 5; System.out.println("Required packages have been imported"); Scanner my_scanner = new Scanner(System.in); System.out.println("A reader object has been defined "); System.out.print("Enter the number : "); my_input = my_scanner.nextInt(); System.out.print("Enter the power value : "); my_power = my_scanner.nextInt(); result = getPower(my_input, my_power); System.out.println("The result of " +my_input + "^" + my_power + " is " + result); } public static int getPower(int my_input, int my_power) { if (my_power != 0) { return (my_input * getPower(my_input, my_power - 1)); } else { return 1; } } }
আউটপুট
Required packages have been imported A reader object has been defined Enter the number : 2 Enter the power value : 5 The result of 2^5 is 32
উদাহরণ 2
এখানে, পূর্ণসংখ্যা পূর্বে সংজ্ঞায়িত করা হয়েছে, এবং এর মান অ্যাক্সেস করা হয়েছে এবং কনসোলে প্রদর্শিত হয়েছে।
public class Power { public static void main(String[] args) { int my_power, my_input, result; my_input = 2; my_power = 5; System.out.println("The number and its power is defined as " +my_input + " and " +my_power); result = getPower(my_input, my_power); System.out.println("The result of " +my_input + "^" + my_power + " is " + result); } public static int getPower(int my_input, int my_power) { if (my_power != 0) { return (my_input * getPower(my_input, my_power - 1)); } else { return 1; } } }
আউটপুট
The number and its power is defined as 2 and 5 The result of 2^5 is 32