Heim > Artikel > Backend-Entwicklung > Summieren Sie rekursiv die Summe der Ziffern einer durch wiederholte Additionen gebildeten Zahl, implementiert in C++
Gegeben sind zwei Ganzzahlen „number“ und „repeat“ als Eingabe. Das Ziel besteht darin, die numerische Summe einer eingegebenen Zahl zu berechnen, die so oft wiederholt wird, bis die Summe eine einzige Zahl wird. Fahren Sie auf diese Weise fort, bis die Summe der erhaltenen Zahlen eine einstellige Zahl ergibt. Wenn die eingegebene Zahl 123 ist und Wiederholung = 2 ist, ergibt sich die Summe von 123123 1+2+3+1+2+3=12 Dies ist keine einzelne Ziffer. Nun ist die Summe der Ziffern von 12 1+2=3. Die Ausgabe wird 3 sein.
Eingabe− Zahl=32 Wiederholung=3
Ausgabe− Die rekursive Zahlensumme der durch wiederholtes Anhängen gebildeten Zahlen ist: 6
Erläuterung: Die Summe von − 323232 ist 3+2+3+ 2+3+2=15, und die Summe der Ziffern von 15 ist 1+5=6. 6 ist eine einzelne Ziffer, daher ist die Ausgabe 6.
Eingabe− Zahl=81 Wiederholung=4
Ausgabe−Die rekursive Summe der durch wiederholtes Anhängen gebildeten Zahlen ist: 9
Erklärung - Die Summe der Zahlen von 81818181 ist 1+8+1 +8+1 +8+1+ 8=36, die Summe der Ziffern von 36 ist 3+6=9. 9 ist eine einzelne Ziffer, daher ist die Ausgabe 9.
Deklarieren Sie zwei Variablen vom Typ Integer, z. B. Zahl und Wiederholung. Übergeben Sie die Daten als Recursive_Sum(number, Repeat) an die Funktion.
Innerhalb der Funktion als Recursive_Sum(int number, int Repeat)
Deklarieren Sie eine Ganzzahlvariable als total und setzen Sie sie mit repeat * sum(number);
Den Aufruf an die Funktion als sum( zurückgeben) total) .
innerhalb der Funktion als sum(int number)
prüft, ob die IF-Nummer 0 ist und gibt 0 zurück.
Überprüfen Sie, ob die IF-Nummer % 9 0 ist, und geben Sie 9 zurück.
ELSE, Rückgabenummer % 9
Drucken Sie das Ergebnis aus.
#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; }
Wenn wir den obigen Code ausführen, wird die folgende Ausgabe generiert
Recursive sum of digits of a number formed by repeated appends is: 3
Das obige ist der detaillierte Inhalt vonSummieren Sie rekursiv die Summe der Ziffern einer durch wiederholte Additionen gebildeten Zahl, implementiert in C++. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!