मान लीजिए कि हमारे पास एक संख्या एन है, हमारा काम रिकर्सन का उपयोग करके एलएन (एन!) ढूंढना है। ln() मूल रूप से लॉग बेस ई है। इसे हल करने के लिए हम इस सूत्र का उपयोग कर सकते हैं -
$$\ln\lgroup N!\rgroup=\ln\lgroup N*\lgroup N-1\rgroup *\lgroup N-2\rgroup *\dotsm*2*1\rgroup=\ln\lgroup N\rgroup+\ ln\lgroup N+1\rgroup+\dotsm+\ln\lgroup 1\rgroup$$
उदाहरण
#include<iostream> #include<cmath> using namespace std; double factLog(int n) { if (n <= 1) return 0; return factLog(n - 1) + log(n); } int main() { int N = 3; cout << factLog(N); }
आउटपुट
1.79176