Input/Output Codezeile erklären

cybermailer

Mitglied
Bräuchte eine Erlärung zu folgender While Schleife:

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(',');
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
 
Zuletzt bearbeitet von einem Moderator:

Plopo

Bekanntes Mitglied
Vielleicht helfen dir die Kommentare ja weiter.
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; //Initialisiert die Variable "first" mit "true";
            while (x > 0) { 
                if (x % 2 == 1) {
                    if (first == true)
                    {
                         //Da dies die erste Zahl ist (first == true) wird kein "," ausgegeben
                         //Damit die nächste Zahl ein Komma bekommt setzen wir die
                         //Variable "first" auf "false"
                         first = false;
                    }
                    else
                    {
                         //Nun ist "first == false" womit der Die "else-Anweisung" durchgangen wird
                         //und ein "," gesetzt wird.
                         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(); 
        } 
    } 
}
 

ARadauer

Top Contributor
beim ersten keinen beistrich machen... das macht es

also erstes = true
1. Zahl: erstes ist true, erstes wird false;
2. Zahl: erstes ist false, beistrich wird gemacht
3. zahl: erstes ist false, beistrich wird gemacht
..
 
S

SlaterB

Gast
vor 1. Stelle? verzichen -> _
1. Stelle ausgeben -> 2
vor 2. Stelle? Komma -> ,
2. Stelle ausgeben -> 3
vor 3. Stelle? Komma -> ,
3. Stelle ausgeben -> 5

-> _ 2, 3, 5
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
V Codezeile wird einfach nicht ausgeführt Java Basics - Anfänger-Themen 23
A Codezeile die ich nicht verstehe Java Basics - Anfänger-Themen 7
B Kleine Erklärung zu einer Codezeile benötigt Java Basics - Anfänger-Themen 5
B Verständnisfrage Codezeile Java Basics - Anfänger-Themen 7
Binary.Coder Vor und nach jeder Codezeile etwas einfügen Java Basics - Anfänger-Themen 3
S OOP Probleme mit einer Codezeile Java Basics - Anfänger-Themen 5
T Kann mir jemand wörtlich erklären, was in dem Code genau passiert? Java Basics - Anfänger-Themen 1
W Java-Code erklären Java Basics - Anfänger-Themen 6
F Kann mir jemand kurz dieses Programm erklären? Java Basics - Anfänger-Themen 22
R Pseudocode erklären Java Basics - Anfänger-Themen 6
dieter000 Kurze Frage kann mir ejmand kurz diesen Code erklären, bzw wie man die zeilen erklärt und so Java Basics - Anfänger-Themen 1
M Könnte mir jemand diese Aufgabe erklären? Java Basics - Anfänger-Themen 2
M Kann mir jemand die Logik erklären? Java Basics - Anfänger-Themen 1
M Könnte mir jemand diese Aufgabe erklären? Java Basics - Anfänger-Themen 9
B Modulo-Operator anhand eines Beispieles erklären Java Basics - Anfänger-Themen 7
marcooooo Code erklären Java Basics - Anfänger-Themen 28
marcooooo Code erklären Java Basics - Anfänger-Themen 4
marcooooo Kann mir jemand das Beispiel kurz erklären so ungefähr:/ Java Basics - Anfänger-Themen 7
Bluedaishi Hilfe beim erklären dieser Methode Java Basics - Anfänger-Themen 5
A Kann mir Jemand erklären wie ich das iteriere? Java Basics - Anfänger-Themen 4
B Klassendiagramm erklären Java Basics - Anfänger-Themen 3
T Java Code erklären Java Basics - Anfänger-Themen 7
L Methode erklären Java Basics - Anfänger-Themen 4
L Methode erklären Java Basics - Anfänger-Themen 2
J String Problem kann das einer erklären Java Basics - Anfänger-Themen 13
A Kann mir jemand dieses Programm erklären? Java Basics - Anfänger-Themen 1
S Programm verständlich erklären Java Basics - Anfänger-Themen 4
N Hilfe, Code erklären Java Basics - Anfänger-Themen 7
B Kann mir jemand diese Bedingung erklären Java Basics - Anfänger-Themen 5
B Kann mir jemand erklären, warum hier dreimal was ausgegeben wird und nicht nur zweimal? Java Basics - Anfänger-Themen 16
B Wie würdet ihr diese Methode erklären? Java Basics - Anfänger-Themen 2
T Java Code erklären Java Basics - Anfänger-Themen 5
J TabelView - Kann mir jemand die Sequenz genau erklären ? Java Basics - Anfänger-Themen 2
D Einlesen funktioniert an einer Stelle nicht und ich kann mir nicht erklären warum Java Basics - Anfänger-Themen 6
M ImageObserver auf Deutsch erklären Java Basics - Anfänger-Themen 3
X Quelltext einen Tic Tac Toe Spiels erklären Java Basics - Anfänger-Themen 4
F Bitte mal Zusammenhänge der Klassen erklären Java Basics - Anfänger-Themen 8
J Kann mir bitte mal jemand diese Codes erklären? Java Basics - Anfänger-Themen 19
O Rundungsfehler bitte erklären! Java Basics - Anfänger-Themen 4
R kann mir jemand erklären was hier gemacht wurde? Java Basics - Anfänger-Themen 10
X Array Ausgabe bei Verwendung von 2 Schleifen erklären Java Basics - Anfänger-Themen 8
D Kann mir vielleicht jemand die reflexive Assoziation erklären? Java Basics - Anfänger-Themen 2
S For-Schleifen erklären Java Basics - Anfänger-Themen 5
S catch Exception erklären Java Basics - Anfänger-Themen 2
V Wer kann diesen Code leicht erklären Java Basics - Anfänger-Themen 8
H Javacode erklären: Mittelpunkt bestimmen Java Basics - Anfänger-Themen 4
B Code erklären Java Basics - Anfänger-Themen 2
N Wer kann diese Zeile erklären? Java Basics - Anfänger-Themen 9
D Methode erklären Java Basics - Anfänger-Themen 4
D code erklären bitte ! Java Basics - Anfänger-Themen 15
Rudolf Verstehe das Ergebnis nicht - bitte erklären Java Basics - Anfänger-Themen 7
M Kann mir bitte jemand "java.util.ArrayList" erklären? Java Basics - Anfänger-Themen 5
A Am Buch lesen, nun brauch ich eure Hilfe um mir super() zu erklären Java Basics - Anfänger-Themen 4
G Programm erklären -.- Java Basics - Anfänger-Themen 2
K Wer kann mir java.util.Hastable erklären. Java Basics - Anfänger-Themen 3
G Kann mir jemand das erklären? Java Basics - Anfänger-Themen 11
B Kann mir einer die Import Klassen erklären? Java Basics - Anfänger-Themen 8
I Einlesen von Dateien- wer kann mir den Code erklären ? Java Basics - Anfänger-Themen 4
S sql Klassen erklären Java Basics - Anfänger-Themen 3
P Schreibweise erklären- neu für mich Java Basics - Anfänger-Themen 3
M Kann mir jemand erklären, wie "static" funktionier Java Basics - Anfänger-Themen 2
G eine zeile code erklären Java Basics - Anfänger-Themen 3
R Seiteneffekt erklären Java Basics - Anfänger-Themen 2
W Methode erklären?! Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben