public static void main (String[] args)
{
System.out.println(factorial(5));
}
public int factorial(int n)
{
if(n <= 1){
return 1;
}
else{
return n * factorial(n - 1);
}
}
मैंने उपरोक्त सीधे यहां लिखा है, इसलिए संकलित नहीं हो सकता है लेकिन ऐसा लगता है।बुनियादी रिकर्सन
क्या कोई भी बुद्धिमानी से समझा सकता है कि यह कैसे संसाधित करता है कि यह कैसे संग्रहीत किया जाता है? यह 5 * (5-1) की गणना करके शुरू होता है, फिर नीचे 4 * (4-1) फिर 3 * (3-1) ..... जब तक यह 1 तक नहीं पहुंच जाता है जो केवल 1 दाएं वापस आ जाएगा? इसलिए अधूरा होने के लिए खेद मैं सिर्फ पता लगाने के लिए कि यह कैसे काम करता है वास्तव में
धन्यवाद
रुचि होगी लेकिन के रूप में यह इसे बाहर काम करता है - यह अलग-अलग चरणों के लिए मान हो जाता है
5 * (5 -1) 4 * (4-1) ... ... ...
कैसे इन संग्रहीत और फिर वापस लिया गया या मैं कुछ याद आ रही है कर रहे हैं?
5 * ((5-1) * (() 4-1) * ((3-1) * ((2-1) * 1))) – jball
शायद यह प्रश्न आपको मदद करता है: http://stackoverflow.com/questions/1949454/-) – Esko
मैं चाहता था टिप्पणी करना पसंद है कि फैक्टोरियल एक * बुरा * रिकर्सन का उदाहरण है। –