Moin,
Das ist meine erste Frage als relativ neuer Student, deshalb etwas Verständnis bitte
.
Ich habe die Aufgabe alle echten Teiler von einer vom User übergebenen Zahl n auszugeben.
Folgendes ist mein Ansatz:
Das Problem: Es ist eine genaue Formatierung erforderlich. Angenommen der User übergibt 15. Dann kriege ich natürlich "Echte Teiler von 15 sind 3, 5, " als Systemausgabe. Gefordert ist aber: "Echte Teiler von 15 sind 3, 5" (ohne "," und ohne Leerzeichen. Abgeschlossen werden soll es mit einem Zeilenumbruch, deshalb das System.out.println).
Wenn ich bestimmen könnte, was der letzte oder erste Teiler der jeweiligen Zahl ist, könnte ich mit einer if abfrage verhindern das dort das Komma mit gedruckt wird.
Hat jemand eine Idee wie man das herausfindet, oder wahrscheinlich gibt es einen noch viel einfacheren Weg?
Vielen Dank im Voraus,
Paul
Das ist meine erste Frage als relativ neuer Student, deshalb etwas Verständnis bitte
Ich habe die Aufgabe alle echten Teiler von einer vom User übergebenen Zahl n auszugeben.
Folgendes ist mein Ansatz:
Java:
public void properDivisors(int n){
System.out.print ("Echte Teiler von " + n + " sind ");
for (int i = 1; i <= n; i++){
if (n%i==0 && n!=i && i!=1){
System.out.print (i + ", ");
}
}
System.out.println(" ");
}
Das Problem: Es ist eine genaue Formatierung erforderlich. Angenommen der User übergibt 15. Dann kriege ich natürlich "Echte Teiler von 15 sind 3, 5, " als Systemausgabe. Gefordert ist aber: "Echte Teiler von 15 sind 3, 5" (ohne "," und ohne Leerzeichen. Abgeschlossen werden soll es mit einem Zeilenumbruch, deshalb das System.out.println).
Wenn ich bestimmen könnte, was der letzte oder erste Teiler der jeweiligen Zahl ist, könnte ich mit einer if abfrage verhindern das dort das Komma mit gedruckt wird.
Hat jemand eine Idee wie man das herausfindet, oder wahrscheinlich gibt es einen noch viel einfacheren Weg?
Vielen Dank im Voraus,
Paul