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

28 Lösungen Lösungen öffentlich
#1

Für eine ganze Zahl alle Teiler ausgeben

Anfänger - Java von Gustl - 06.08.2012 um 23:20 Uhr
Schreiben Sie ein Programm, das dem Benutzer auffordert eine ganze Zahl einzugeben. Danach sollen alle möglichen Teiler dieser Zahl ausgegeben werden.
Wenn keine ganze Zahl (Integer) eingegeben wurde soll eine Fehlermeldung erscheinen und der Benutzer wird noch einmal aufgefordert eine Zahl einzugeben.
#20
vote_ok
von guandi (230 Punkte) - 02.08.2018 um 15:54 Uhr
Quellcode ausblenden Java-Code
import java.util.*;


public class App {
	public static void main(String[] args) {
		/* Schreiben Sie ein Programm, das dem Benutzer auffordert eine ganze Zahl einzugeben. 
		 * Danach sollen alle möglichen Teiler dieser Zahl ausgegeben werden. 
		 * Wenn keine ganze Zahl (Integer) eingegeben wurde soll eine Fehlermeldung erscheinen und 
		 * der Benutzer wird noch einmal aufgefordert eine Zahl einzugeben.
		*/

		System.out.println("Willkommen beim Ganzzahlteiler :)");
		
		berechnung(ausgabe());
	}

	static int ausgabe() {
		Scanner einlesen = new Scanner(System.in);
		
		int eingabe = 0;
		
			try {
				System.out.print("Bitte geben Sie eine ganze Zahl ein:");
				eingabe = einlesen.nextInt();
			}catch (Exception e) {
				System.out.println("Bitte nur Ganzzahlen eingeben!");
				eingabe = ausgabe();
			}
		return eingabe;
		
	}
	
	static void berechnung(int usrEingabe) {
		int[] divisor = null;
		
		divisor = new int[usrEingabe];
		
		for(int i=1; i<=usrEingabe; i++) {
			if((usrEingabe%i) == 0) {
				int j = i;
				j--;
				divisor[j] = i;
			}
		}
		
		for(int i=0; i<divisor.length ;i++) {
			int x = divisor[i];
			if(x!=0) {
				System.out.println(x +" ist ein Teiler von: "+ usrEingabe);
			}
		}
	}
}

Kommentare:

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

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