addics Geschrieben 31. Januar 2007 Teilen Geschrieben 31. Januar 2007 Hallo, ich habe eine Zahl in folgenden Format: 123456789 Hier soll eine Prüfziffer ausgegeben werden. Die obige Zahl soll addiert werden= 1+2+3+4+5+6+7+8+9 Davon soll dann der Modulo % zurückgegeben werden. wie wird so etwas programmiert. Bsp wäre nett Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
mkScheller Geschrieben 31. Januar 2007 Teilen Geschrieben 31. Januar 2007 zwei Möglichkeiten: Erste) Einzelziffern durch Division mit Zehnerpotenz erhalten: 123.456.789 / 100.000.000 = 1,23456789 (1,23456789 - 1) * 10 = 2,3456789 (2,3456789 - 2) * 10 = 3,456789 (3,456789 - 3) * 10 = 4,56789 ... und entsprechend kürzen, glaube über Math.ceil(zahl) Zweite) Zahl in String umwandeln: String.valueOf(zahl) und dann über substring jede String-Ziffer erhalten und wieder in 'echte' Ziffer verwandeln... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Jan Jansen Geschrieben 31. Januar 2007 Teilen Geschrieben 31. Januar 2007 Die Aufgabe kann man gut mit den 2 Operatoren Div und Mod (/ und %) lösen: Div ist eine Ganzzahlige Division ohne Rest (123/10=12) Modulo bestimmt den Rest einer Division (123%10=3) Dein Programm könnte folgendermaßen aussehen: Solange deine Zahl > 1 ist, | Bestimme mit %10 die letzte Stelle der Zahl (Ergebnis in Summe speichern ...) | Dividiere die Zahl mit /10 (Zahl=Zahl/10) Ausgabe der Summe Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.