একটি অঋণাত্মক পূর্ণসংখ্যা n-এর ফ্যাক্টোরিয়াল হলো ১ থেকে n পর্যন্ত সব পূর্ণসংখ্যার গুণফল। চিহ্ন: n!
উদাহরণ: 5! = 5 × 4 × 3 × 2 × 1 = 120
পদ্ধতি ১: নন-রিকার্সিভ (for লুপ)
#include <iostream>
using namespace std;
int main() {
int n = 5, fact = 1, i;
for(i = 1; i <= n; i++)
fact = fact * i;
cout << "Factorial of " << n << " is " << fact;
return 0;
}
আউটপুট
Factorial of 5 is 120
for লুপ ১ থেকে n পর্যন্ত চলে। প্রতিটি ধাপে fact কে i দিয়ে গুণ করা হয়।
পদ্ধতি ২: রিকার্সিভ
#include <iostream>
using namespace std;
int fact(int n) {
if(n == 0 || n == 1)
return 1;
else
return n * fact(n - 1);
}
int main() {
int n = 5;
cout << "Factorial of " << n << " is " << fact(n);
return 0;
}
আউটপুট
Factorial of 5 is 120
fact() একটি রিকার্সিভ ফাংশন। যদি n ০ বা ১ হয়, তবে ১ রিটার্ন করা হয়। অন্যথায় n * fact(n-1) রিটার্ন করা হয়।