Java :: Aufgabe #3 :: Lösung #6
22 Lösungen

#3
Quersumme berechnen und ausgeben
Anfänger - Java
von Gustl
- 12.08.2012 um 14:49 Uhr
Schreiben sie ein Konsolenprogramm, das eine
ihre Quersumme berechnet und das Ergebnis wie folgt ausgibt:
int
-zahl > 0 und < 10000 einliest, ihre Quersumme berechnet und das Ergebnis wie folgt ausgibt:
Konsolenausgabe:
Zahl eingeben (0-10000): 3698
Quersumme: 3 + 6 + 9 + 8 = 26
#6

von Jurom (1070 Punkte)
- 19.10.2012 um 11:11 Uhr

//©2012 by Julius J. Hoffmann //written with Eclipse /** Unerwarteterweise hat das Casten der char Variablen bei mir nicht funktioniert, * weswegen ich die char-Var. in einem String zwischengespeichert habe. * Nur zur Vervollständigung hier noch einmal die Cast-Möglichkeit: * int no = (int)nr.charAt(index); * Wenn jemand eine Lösung weiß, kann er sich gerne bei mir melden :) */ import java.util.*; //Importiert Scanner zum Einlesen der Eingabe public class Quersumme { // Java-Klasse mit main-Methode ("ausführende Klasse") public static void main(String[] args) //main-Funktion { System.out.print("zahl eingeben (0-10000): "); //Gibt den String auf dem Bildschirm aus Scanner s = new Scanner(System.in); //legt das Scanner-Objekt an String nr = s.next(); //liest die manuelle Eingabe ein und speichert sie in dem String nr int length = nr.length(); //Bestimmt die Anzahl der Zeichen und speichert sie in length int qs = 0; //Initialisierung der Variablen qs System.out.print("Quersumme: "); /** * Initiieren einer for-Schleife * index - Die Stelle im String, welche addiert werden soll * index < length - Beenden des Hochzählens, wenn index am Ende des Strings angekommen ist * index++ - Weiterrücken des index um 1 Stelle nach jedem Schleifendurchlauf */ for (int index=0; index < length; index++) //s.o. { String a = String.valueOf(nr.charAt(index)); //Speichern der ausgewählten Zahl im Hilfsstring a || "Umformen" von char in String int no = Integer.parseInt(a); //"Umformen" (parsen) des String in einen Int-Wert, Speichern in no qs = qs+no; //Addieren der ausgewählten Stelle zum bisherigen Wert (Iteration) if(index<length-1) System.out.print(no + "+"); //Ausgabe der Summanden mit + else System.out.print(no); //Ausgabe des letzten Summanden } //Beenden der for-Schleife System.out.print(" = " + qs); //Ausgabe der Quersumme } //Beenden der main-Methode } //Schliessen der Klasse
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1