Bräuchte eine Erlärung zu folgender While Schleife:
Eine mögliche Lösung bei Eingabe der Zahl 44 sieht so aus {2,3,5}
Meine Lösung sieht so aus: {2,3,5,}
Und genau das ist mein Problem der Beistrich.
Dieser wird mittels diesen Code gelöst:
Wobei am Anfang boolean = true gesetzt wird...
hmm ich check jetzt gerade nicht was da passiert...
kann mir das jemand (für Anfänger) erklären?
Danke!!
PS.: Dieser Code rechnet sich die Binärdarstellung einer Zahl aus.
Bei 44:
x x/2 Rest Pos
44 22 0 0
22 11 0 1
11 5 1 2
5 2 1 3
2 1 0 4
1 0 1 5
Binär: 101100 = 2^2 + 2^3+2^5
= Lösung 2,3,5
PHP:
public class K4A5 {
public static void main(String[] arg) {
Out.print("Geben Sie eine positive ganze Zahl ein (Ende = Strg-C): ");
int x = In.readInt();
while (In.done()) {
Out.print('{');
int pos = 0;
boolean first = true;
while (x > 0) {
if (x % 2 == 1) {
if (first) first = false; else Out.print(',');
Out.print(pos);
}
x = x / 2;
pos = pos + 1;
}
Out.println('}');
Out.println();
Out.print("Geben Sie eine positive ganze Zahl ein (Ende = Strg-C): ");
x = In.readInt();
}
}
}
Eine mögliche Lösung bei Eingabe der Zahl 44 sieht so aus {2,3,5}
Meine Lösung sieht so aus: {2,3,5,}
Und genau das ist mein Problem der Beistrich.
Dieser wird mittels diesen Code gelöst:
PHP:
if (first) first = false; else Out.print(',');
hmm ich check jetzt gerade nicht was da passiert...
kann mir das jemand (für Anfänger) erklären?
Danke!!
PS.: Dieser Code rechnet sich die Binärdarstellung einer Zahl aus.
Bei 44:
x x/2 Rest Pos
44 22 0 0
22 11 0 1
11 5 1 2
5 2 1 3
2 1 0 4
1 0 1 5
Binär: 101100 = 2^2 + 2^3+2^5
= Lösung 2,3,5
Zuletzt bearbeitet von einem Moderator: