Hallo Leute,
Ich bin ein Java-Anfänger und möchte folgende Aufgabenstellung lösen:
· Geben sie diese Zahlen formatiert in Dezimal aus (3 Stellen, führende Nullen).
· Geben sie diese Zahlen formatiert in Hexadezimal aus (2 Stellen).
· Geben sie diese Zahlen formatiert in Binärdarstellung aus (8 Stellen, rechtsbündig als Datentyp String, verwenden sie die Methode Integer.toBinaryString(...)).
· Verknüpfen sie die letzte zufällig erzeugten Zahl mit den bitweisen Operatoren AND (&) mit 255, ODER (|) mit 1 und XOR(^) mit 255
. Geben sie das Ergebnis in Dezimal/Hexadezimal und Binär aus und überprüfen sie das Ergebnis
Beispiel:
Uebung 18
- Bitweise Operatoren
Bitte die Anzahl der Zufallszahlen <1
- 9>:3
Zufallszahlen:
Dez: 160 Hex: A0 Bin: 10100000
Dez: 041 Hex: 29 Bin: 101001
Dez: 239 Hex: EF Bin: 11101111
Logische Verknuepfung:
Dez: 239 Hex: EF Bin: 11101111
---
AND
Dez: 239 Hex: EF Bin: 11101111
---
OR
Dez: 016 Hex: 10 Bin: 10000
---
XOR
Ein erster Lösungsversuch von mir sieht in etwa so aus:
Mein Hauptproblem ist, dass ich mit der Ausgabeform System.out.format noch nicht sehr vertraut bin.
Ich hoffe Ihr könnt mir weiterhelfen, ich komme nicht auf den Fehler.
Mit freundlichen Grüßen pauli99
Ich bin ein Java-Anfänger und möchte folgende Aufgabenstellung lösen:
· Geben sie diese Zahlen formatiert in Dezimal aus (3 Stellen, führende Nullen).
· Geben sie diese Zahlen formatiert in Hexadezimal aus (2 Stellen).
· Geben sie diese Zahlen formatiert in Binärdarstellung aus (8 Stellen, rechtsbündig als Datentyp String, verwenden sie die Methode Integer.toBinaryString(...)).
· Verknüpfen sie die letzte zufällig erzeugten Zahl mit den bitweisen Operatoren AND (&) mit 255, ODER (|) mit 1 und XOR(^) mit 255
. Geben sie das Ergebnis in Dezimal/Hexadezimal und Binär aus und überprüfen sie das Ergebnis
Beispiel:
Uebung 18
- Bitweise Operatoren
Bitte die Anzahl der Zufallszahlen <1
- 9>:3
Zufallszahlen:
Dez: 160 Hex: A0 Bin: 10100000
Dez: 041 Hex: 29 Bin: 101001
Dez: 239 Hex: EF Bin: 11101111
Logische Verknuepfung:
Dez: 239 Hex: EF Bin: 11101111
---
AND
Dez: 239 Hex: EF Bin: 11101111
---
OR
Dez: 016 Hex: 10 Bin: 10000
---
XOR
Ein erster Lösungsversuch von mir sieht in etwa so aus:
Java:
Scanner in = new Scanner (System.in);
int anzahl, zufallszahl =0, ergAnd =255, ergOr =1, ergXor=255;
String binarystring;
System.out.println("Bitte die Anzahl der Zufallszahlen: ");
anzahl =in.nextInt();
if (anzahl>=1 && anzahl<=9){
System.out.println("Zufallszahlen: ");
for (int i =1; i<=anzahl; i++){
zufallszahl = (int) (Math.random() * 256);
binarystring = Integer.toBinaryString(zufallszahl);
System.out.format("Dez: %03d Hex: %02X Bin: %8s%n", zufallszahl, zufallszahl, binarystring);
}
ergAnd = ergAnd & zufallszahl;
ergOr = ergOr | zufallszahl;
ergXor = ergXor ^ zufallszahl;
System.out.println();
System.out.println("Logischverknüpfung");
binarystring = Integer.toBinaryString(ergAnd);
System.out.format("Dez: %03d Hex: %02X Bin: %8s --- AND%n", ergAnd, ergAnd, binarystring);
binarystring = Integer.toBinaryString(ergOr);
System.out.format("Dez: %03d Hex: %02X Bin: %8s --- OR%n", ergOr, ergOr, binarystring);
binarystring = Integer.toBinaryString(ergXor);
System.out.format("Dez: %03d Hex: %02X Bin: %8s --- Xor%n", ergXor, ergXor, binarystring);
System.out.println(Integer.toBinaryString(-5) + " = " + (~5+1));
System.out.format(" R = %.2f" , 1.0/3);
}else{
System.out.println("Falsche Anzahl (" + anzahl + "), " + "Programm beendet");
}
Ich hoffe Ihr könnt mir weiterhelfen, ich komme nicht auf den Fehler.
Mit freundlichen Grüßen pauli99
Anhänge
Zuletzt bearbeitet von einem Moderator: