C#-এ একটি মেথড রিকার্সিভভাবে কল করতে, নিচের কোড চালাতে পারেন। এখানে, একটি সংখ্যার ফ্যাক্টোরিয়াল (Factorial) আমরা একটি রিকার্সিভ ফাংশন display() ব্যবহার করে বের করছি।
যদি মান ১ হয়, তবে এটি ১ ফেরত দেয় কারণ ১-এর ফ্যাক্টোরিয়াল ১।
if (n == 1) return 1;
যদি না হয়, তবে রিকার্সিভ ফাংশনটি নিচের ইটারেশনগুলো জন্য কল হবে যদি আপনি 5! চান:
Iteration1: 5 * display(5 - 1); Iteration2: 4 * display(4 - 1); Iteration3: 3 * display(3 - 1); Iteration4: 2 * display(2 - 1);
সম্পূর্ণ উদাহরণ
using System;
namespace MyApplication {
class Factorial {
public int display(int n) {
if (n == 1)
return 1;
else
return n * display(n - 1);
}
static void Main(string[] args) {
int value = 5;
int ret;
Factorial fact = new Factorial();
ret = fact.display(value);
Console.WriteLine("Value is : {0}", ret );
Console.ReadLine();
}
}
}
আউটপুট
Value is : 120