Guten Abend zusammen,
hänge nun schon den ganzen Tag an folgender Aufgabe, die uns im Informatikstudium gestellt wurde:
Implementieren Sie ein Programm, das eine Zahl zwischen -128 und 127 in Binärdarstellung ausgibt.
Verwenden Sie hierzu ein Byte, das sie vom Benutzer einlesen (Byte.parseByte(inputString)).
Die einzelnen Stellen sollen durch den Shift-Operator ">>" und bitweises und "&" ausgegeben werden.
Verwenden Sie keine Schleife.
Ich hab die eingegebene Zahl in Byte umgewandelt und dann setzt mein Können wirklich aus.
Das wäre natürlich die einfachste Lösung: System.out.println(Integer.toBinaryString(binaer));
Allerdings hat das nichts mit der Aufgabenstellung zu tun.
Vielleicht hat ja einer die zündende Idee für mich oder sagt mir, dass ich die Aufgabenstellung total falsch verstanden habe.
Grüße
hänge nun schon den ganzen Tag an folgender Aufgabe, die uns im Informatikstudium gestellt wurde:
Implementieren Sie ein Programm, das eine Zahl zwischen -128 und 127 in Binärdarstellung ausgibt.
Verwenden Sie hierzu ein Byte, das sie vom Benutzer einlesen (Byte.parseByte(inputString)).
Die einzelnen Stellen sollen durch den Shift-Operator ">>" und bitweises und "&" ausgegeben werden.
Verwenden Sie keine Schleife.
Code:
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class Aufgabe3 {
public static void main(String[] args) {
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
boolean input = true;
do {
try
{
System.out.println("Geben Sie einen Zahl zwischen -128 und 127 ein:");
String s = in.readLine();
byte binaer = Byte.parseByte(s);
byte out1 = (byte) (binaer >> 7);
byte out11 = ? Hier ist es vorbei bei mir
byte out2 = (byte) (binaer >> 6);
byte out3 = (byte) (binaer >> 5);
byte out4 = (byte) (binaer >> 4);
byte out5 = (byte) (binaer >> 3);
byte out6 = (byte) (binaer >> 2);
byte out7 = (byte) (binaer >> 1);
System.out.println(out11 + " " + out2 + " " + out3 + " " + out4 + " " + out5 + " " + out6 + " " + out7);
catch (Exception e) {
System.out.println("Bitte geben Sie eine Zahl ein.");
input = false;
}
} while (input == false);
}
}
Ich hab die eingegebene Zahl in Byte umgewandelt und dann setzt mein Können wirklich aus.
Das wäre natürlich die einfachste Lösung: System.out.println(Integer.toBinaryString(binaer));
Allerdings hat das nichts mit der Aufgabenstellung zu tun.
Vielleicht hat ja einer die zündende Idee für mich oder sagt mir, dass ich die Aufgabenstellung total falsch verstanden habe.
Grüße