Java Aufgabe "Iterierte Quersumme" wer kann mir helfen siehe Foto?

3 Antworten

Vom Beitragsersteller als hilfreich ausgezeichnet

Ja und was steht in der Exception...

Außerdem solltest du lernen, Fehler zu finden. Das wird dir noch oft passieren und du musst das auch alleine lösen können


Nichtsnutz12 
Beitragsersteller
 04.11.2019, 21:37

PS: da steht:

Exception in thread "main" java.lang.NumberFormatException: For input string: "-"

at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)

at java.lang.Integer.parseInt(Integer.java:572)

at java.lang.Integer.parseInt(Integer.java:615)

at Hausaufgabe2.aufgabe3(Hausaufgabe2.java:63)

at Hausaufgabe2.main(Hausaufgabe2.java:93)

0
BrauchJzHilfe  04.11.2019, 21:59
@Nichtsnutz12

Klar.

summe ist die Quersumme für die erste Zahl. Wo ist dann die Quersumme für die daraus resultierende Zahl? (summe wird in der Schleife nie wieder = 0 gesetzt)

PS: Ein besserer Ansatz wäre eine rekursive Darstellung:

Pseudo Code: result = GetQuersumme(GetQuersumme(4391873))

1
Nichtsnutz12 
Beitragsersteller
 05.11.2019, 16:26
@BrauchJzHilfe

ehmmm also du meinst ja ich hab keine Quersumme für die daraus resultierende zahl, doch ich mach doch nach der for schleife unten schreib ich die neue Summe in den nString rein also das ist ja dann die neue Summe und das ist ja innerhalb der while schleife und die wird erst beendet wenn die länge von nString 1 ist deswegen eigentlich hab ich das gemacht

0
Nichtsnutz12 
Beitragsersteller
 04.11.2019, 21:36

ich hab schon lang gesucht ich meld mich meist hier auf gutefrage wenn ich den Fehler nicht allein finden kann ):

0

Hi, liest du einen string ein und versuchst du den dann in einen integer umzuwandeln? Hab den Code nicht gesehen, klicke nicht gerne auf solche links (sorry) aber die Fehlermeldung im Kommentar sieht danach aus.

Liebe Grüße


Nichtsnutz12 
Beitragsersteller
 06.11.2019, 14:24

Genau genau das tu ich aber hmmmmm keine Ahnung was dran nicht gehen sollte 😣

0

Kurze Frage: Müsst ihr das unbedingt mit wiederholten Quersummen machen? Der einfachste Weg die iterierte Quersumme zu bilden ist einfach die Zahl Modulo 9 zu nehmen :D


PWolff  06.11.2019, 16:40

Da es sich um eine Programmierübung handelt, geht es genau um die Iteration. In einem Produktivsystem wäre dies eine einfachere Implementierung einer Funktion iterierteQuersumme().

0
Nichtsnutz12 
Beitragsersteller
 04.11.2019, 23:05

Echt woher kennst du den Trick?

0