Java :: Aufgabe #100 :: Lösung #1

4 Lösungen Lösungen öffentlich
#100

Quersummen Berechnung

Anfänger - Java von mattthias - 18.08.2015 um 09:49 Uhr
Teil1. Schreibe ein Konsolenprogramm, welches die Quersummen der Zahlen 0 bis 99 errechnet.

Zusatz: Schreibe ein Programm, welches eine Eingabe annimmt, und aus der eingegebenen Zahl die Quersumme errechnet
(Mindestens bis 100.000).

*Das Programm muss sauber formatiert sein
*Verwende Kommentare zum besseren Verständnis und / oder halte deinen Fortschritt damit fest

Hinweise und Anregungen:

- Teil 1 darf auf den Fall bezogen programmiert werden. Aber:Ist das notwendig?
- Vergiss das Semikolon nicht
- Wie kann ich die Konsole offen lassen, bis ich Enter drücke? Alternativ: Wie könnte ich die Konsole über einen bestimmten
Zeitraum das Ergebnis anzeigen lassen?
#1
vote_ok
von joggel (180 Punkte) - 28.12.2015 um 14:50 Uhr
Quellcode ausblenden Java-Code
package pQuersumme;

import java.util.Scanner;

public class Testclass {

	public static void main(String[] args) {
		int input=0;
		Scanner theScanner=new Scanner(System.in);
		System.out.println("Bitte Zahl eingeben:");
		input=theScanner.nextInt();
		System.out.println("Die Quersumme der Zahl: "+input+" lautet "+Testclass.caluclateDigitSum(input));
		
	}

	//Calculate the digit sum of numbers smaller than 100
	static int calculateDigigtSumSimple(int input){
		int digit_sum=0;
		if (input<10) {
			digit_sum=input;
		}else {
			digit_sum=(input/10)+(input%10);
		}
		return digit_sum;
	}

	//Calculates the digits of a number for numbers smaller than 10^1000
	static int calculateDigits(int input){
		int digits=0;
		for (int i = 0; i < 1000; i++) {
			int compareToInput=(int) Math.pow(10, i);
			if (compareToInput>input) {
				digits=i;
				break;
			}
		}
		return digits;
	}
	//Calculate the digit sum of numbers greater than 99
	static int caluclateDigitSum(int input){
		int digit_sum=0;
		int digits=Testclass.calculateDigits(input);
		for (int i = digits-1; i >= 0; i--) {
			digit_sum=(int) (input/Math.pow(10, i))+digit_sum;
			input=(int) (input%Math.pow(10, i));
		}
		return digit_sum;
	}
}

Kommentare:

Für diese Lösung gibt es noch keinen Kommentar

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

Du scheinst einen AdBlocker zu nutzen. Ich würde mich freuen, wenn du ihn auf dieser Seite deaktivierst und dich davon überzeugst, dass die Werbung hier nicht störend ist.