इनपुट के रूप में दो पूर्णांक 'संख्या' और 'दोहराना' दिया गया है। लक्ष्य इनपुट संख्या के अंकों के योग की गणना करना है जब तक कि योग एक अंक न हो जाए। ऐसा तब तक करें जब तक अंकों के योग वाली प्राप्त संख्या एक अंक की संख्या न बन जाए। यदि इनपुट संख्या 123 है और 123123 के अंकों के योग की तुलना में दोहराना =2 होगा, तो 1+2+3+1+2+3=12 होगा जो एक अंक की संख्या नहीं है। अब 12 के अंकों का योग 1+2=3 है। आउटपुट 3
. होगाआइए इसके लिए विभिन्न इनपुट आउटपुट परिदृश्य देखें
इनपुट -नंबर=32 रिपीट=3
आउटपुट - दोहराए गए परिशिष्टों द्वारा बनाई गई संख्या के अंकों का पुनरावर्ती योग है:6
स्पष्टीकरण - 323232 के अंकों का योग 3+2+3+2+3+2=15 है और 15 के अंकों का योग 1+5=6 है। 6 एक अंक की संख्या है इसलिए आउटपुट 6 होगा।
इनपुट − नंबर=81 रिपीट=4
आउटपुट - दोहराए गए परिशिष्टों द्वारा बनाई गई संख्या के अंकों का पुनरावर्ती योग है:9
स्पष्टीकरण - 81818181 के अंकों का योग 1+8+1+8+1+8+1+8=36 है और 36 के अंकों का योग 3+6=9 है। 9 एक अंक की संख्या है इसलिए आउटपुट 9 होगा।
नीचे दिए गए प्रोग्राम में इस्तेमाल किया गया तरीका इस प्रकार है
-
दो पूर्णांक प्रकार चर को संख्या के रूप में घोषित करें और दोहराएं। फ़ंक्शन को डेटा को रिकर्सिव_सम (संख्या, दोहराना) के रूप में पास करें।
-
फ़ंक्शन के अंदर Recursive_Sum (इंट नंबर, इंट रिपीट) के रूप में
-
एक पूर्णांक चर को कुल घोषित करें और इसे एक दोहराव * योग (संख्या) के साथ सेट करें;
-
फ़ंक्शन को योग (कुल) के रूप में वापस कॉल करें।
-
-
फ़ंक्शन के अंदर योग के रूप में (इंट नंबर)
-
चेक करें कि IF नंबर 0 है तो वापस 0.
-
चेक करें कि IF नंबर% 9 0 है तो 9 लौटाएं।
-
ELSE, वापसी संख्या% 9
-
-
परिणाम प्रिंट करें।
उदाहरण
#include <bits/stdc++.h> using namespace std; int sum(int number){ if(number == 0){ return 0; } if(number % 9 == 0){ return 9; } else{ return number % 9; } } int Recursive_Sum(int number, int repeat){ int total = repeat * sum(number); return sum(total); } int main(){ int number = 12; int repeat = 4; cout<<"Recursive sum of digits of a number formed by repeated appends is: "<<Recursive_Sum(number, repeat); return 0; }
आउटपुट
यदि हम उपरोक्त कोड चलाते हैं तो यह निम्न आउटपुट उत्पन्न करेगा
Recursive sum of digits of a number formed by repeated appends is: 3