এই নিবন্ধে, আমরা বুঝব কিভাবে পুনরাবৃত্তি ব্যবহার করে একটি সংখ্যার অঙ্কের যোগফল খুঁজে বের করা যায়। একটি পুনরাবৃত্ত ফাংশন এমন একটি ফাংশন যা একটি নির্দিষ্ট শর্ত সন্তুষ্ট না হওয়া পর্যন্ত নিজেকে একাধিকবার কল করে৷
Recursion হল একটি স্ব-অনুরূপ উপায়ে আইটেম পুনরাবৃত্তি করার প্রক্রিয়া। প্রোগ্রামিং ভাষায়, যদি একটি প্রোগ্রাম আপনাকে একই ফাংশনের ভিতরে একটি ফাংশন কল করার অনুমতি দেয়, তাহলে তাকে ফাংশনের একটি পুনরাবৃত্ত কল বলা হয়।
অনেক প্রোগ্রামিং ল্যাঙ্গুয়েজ স্ট্যাকের মাধ্যমে পুনরাবৃত্তি বাস্তবায়ন করে। সাধারণত, যখনই একটি ফাংশন (কলার) অন্য একটি ফাংশন (ক্যালি) বা নিজেকে কলী হিসাবে কল করে, কলারের ফাংশনটি এক্সিকিউশন কন্ট্রোল ক্যালিতে স্থানান্তর করে। এই স্থানান্তর প্রক্রিয়াটিতে কলকারী থেকে কলকারীর কাছে পাঠানোর জন্য কিছু ডেটাও জড়িত থাকতে পারে।
নীচে একই -
এর একটি প্রদর্শন রয়েছে৷ইনপুট
ধরুন আমাদের ইনপুট হল −
Enter the number : 12131415
আউটপুট
কাঙ্খিত আউটপুট হবে −
The Sum of digits of 12131415 is 18
অ্যালগরিদম
Step 1 - START Step 2 - Declare two integer values namely my_input and my_result Step 3 - Read the required values from the user/ define the values Step 4 - A recursive function ‘digitSum’ is defined which takes an integer as input. The function computes the reminder by re-iterating over the function multiple times, until the base condition is reached. Step 5 - The recursive function ‘digitSum’ is called and its result is assigned to ‘my_result’ Step 6 - Display the result Step 7 - Stop
উদাহরণ 1
এখানে, একটি প্রম্পটের উপর ভিত্তি করে ব্যবহারকারী দ্বারা ইনপুট প্রবেশ করানো হচ্ছে। আপনি আমাদের কোডিং গ্রাউন্ড টুলে এই উদাহরণ লাইভ চেষ্টা করতে পারেন ।
import java.util.Scanner; public class Sum{ public static void main(String args[]){ int my_input, my_result; 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(); my_result = digitSum(my_input); System.out.println("The Sum of digits of " + my_input + " is " + my_result); } static int digitSum(int n){ if (n == 0) return 0; return (n % 10 + digitSum(n / 10)); } }
আউটপুট
Required packages have been imported A reader object has been defined Enter the number : 12131415 The Sum of digits of 12131415 is 18
উদাহরণ 2
এখানে, পূর্ণসংখ্যা পূর্বে সংজ্ঞায়িত করা হয়েছে, এবং এর মান অ্যাক্সেস করা হয়েছে এবং কনসোলে প্রদর্শিত হয়েছে।
public class Sum{ public static void main(String args[]){ int my_input = 12131415; System.out.println("The number is defined as : " +my_input); int my_result = digitSum(my_input); System.out.println("The Sum of digits of " + my_input + " is " + my_result); } static int digitSum(int n){ if (n == 0) return 0; return (n % 10 + digitSum(n / 10)); } }
আউটপুট
The number is defined as : 12131415 The Sum of digits of 12131415 is 18