VooDoo08
Grünschnabel
Hallo!
Ich bin Programmier-Anfänger und hab bei einer Übungsaufgabe das ein oder andere Problem.
Hier die Aufgabe:
Die Dezimalziffern einer natürlichen Zahl n, n >= 1, werden einzeln quadriert und addiert. Anschließend wird mit der entstandenen Summe genauso verfahren. Die Ausgangszahl n heißt "gut", wenn man letztlich bei diesem Vorgehen auf die Zahl 1 stößt, ansonsten ist sie "schlecht".
Beispiel für n = 7:
7: 7*7 = 49
49: 4*4 + 9*9 = 97
97: 9*9 + 7*7 = 130
130: 1*1 + 3*3 + 0*0 = 10
10: 1*1 + 0*0 = 1
Nun soll ein JAVA-Programm geschrieben werden, dass alle "guten" Zahlen zwischen einer Ober- und einer Untergrenze berechnet und die dazugehörigen Folgen ausgibt. Der Dialog soll folgendermaßen aussehen:
Bitte geben Sie die untere Grenze ein: 5
Bitte geben Sie die obere Grenze ein: 30
7 -> 49 -> 97 -> 130 -> 10 -> 1
10 -> 1
19 -> 82 -> 68 -> 100 -> 1
23 -> 13 -> 10 -> 1
28 -> 68 -> 100 -> 1
Die Scanner für die Ober- und Untergrenze hab ich problemlos zum laufen bekommen.
Die Probleme hab ich bei der Aufteilung der Zahlen in Ziffern.
Ich habe versucht, es in verschiedenen arrays zu speichern, aber das klappt nicht so richtig.
Dann hab ich sie mit ner anderen Methode als strings rausbekommen, aber dann konnte ich die zaheln nicht quadrieren...
Ich verzweifle so langsam und wäre für den ein oder anderen Denkanstoß sehr dankbar.
Ich verlange keine Komplettlösung, aber ein paar Hinweise, was ich beachten muss, wären wirklich hilfreich.
MfG
VooDoo08
Ich bin Programmier-Anfänger und hab bei einer Übungsaufgabe das ein oder andere Problem.
Hier die Aufgabe:
Die Dezimalziffern einer natürlichen Zahl n, n >= 1, werden einzeln quadriert und addiert. Anschließend wird mit der entstandenen Summe genauso verfahren. Die Ausgangszahl n heißt "gut", wenn man letztlich bei diesem Vorgehen auf die Zahl 1 stößt, ansonsten ist sie "schlecht".
Beispiel für n = 7:
7: 7*7 = 49
49: 4*4 + 9*9 = 97
97: 9*9 + 7*7 = 130
130: 1*1 + 3*3 + 0*0 = 10
10: 1*1 + 0*0 = 1
Nun soll ein JAVA-Programm geschrieben werden, dass alle "guten" Zahlen zwischen einer Ober- und einer Untergrenze berechnet und die dazugehörigen Folgen ausgibt. Der Dialog soll folgendermaßen aussehen:
Bitte geben Sie die untere Grenze ein: 5
Bitte geben Sie die obere Grenze ein: 30
7 -> 49 -> 97 -> 130 -> 10 -> 1
10 -> 1
19 -> 82 -> 68 -> 100 -> 1
23 -> 13 -> 10 -> 1
28 -> 68 -> 100 -> 1
Die Scanner für die Ober- und Untergrenze hab ich problemlos zum laufen bekommen.
Die Probleme hab ich bei der Aufteilung der Zahlen in Ziffern.
Ich habe versucht, es in verschiedenen arrays zu speichern, aber das klappt nicht so richtig.
Dann hab ich sie mit ner anderen Methode als strings rausbekommen, aber dann konnte ich die zaheln nicht quadrieren...
Ich verzweifle so langsam und wäre für den ein oder anderen Denkanstoß sehr dankbar.
Ich verlange keine Komplettlösung, aber ein paar Hinweise, was ich beachten muss, wären wirklich hilfreich.
MfG
VooDoo08