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

22 Lösungen Lösungen öffentlich
#3

Quersumme berechnen und ausgeben

Anfänger - Java von Gustl - 12.08.2012 um 14:49 Uhr
Schreiben sie ein Konsolenprogramm, das eine 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
vote_ok
von Jurom (1070 Punkte) - 19.10.2012 um 11:11 Uhr
Quellcode ausblenden Java-Code
//©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

Bitte melden Sie sich an um eine Kommentar zu schreiben.
Kommentar schreiben