Veröffentlicht 23. Januar 201015 j Hey, wenn ich eine Dualzahl richtig herum ausgeben will ohne Arrays, Strings und dynamische Datenstrukturen zu benutzen, wie müsste ich das machen? bis jetzt hab ich das hier while(a>0){ rest=a%2; a=a/2; Out.print(rest); } kann ich da was mit der Komplementbildung machen? also nullen und einsen umkehren um so auf die gewünschte ausgabe zu kommen? schon mal danke mfg Astasor
23. Januar 201015 j wenn ich eine Dualzahl richtig herum ausgeben will ohne Arrays, Strings und dynamische Datenstrukturen zu benutzen, wie müsste ich das machen? Da gibt's mehrere Möglichkeiten. Eine wäre, zuerst die höchste enthaltene Zweierpotenz zu ermitteln. Rekursion wäre eine andere.
23. Januar 201015 j Autor und was mache ich dann mit der höchsten erhaltenen zweierpotenz? rekursiv muss ich das ganze auch noch machen, doch erstmal will ich es iterativ hinbekommen. ich habs geschafft, das ich die zahlen 0-9 richtig ausgeben kann. aber bei den zahlen darüber (10-n) knabbert meine methode mir die letzte zahl ab. -.-
23. Januar 201015 j und was mache ich dann mit der höchsten erhaltenen zweierpotenz?Abziehen und eine 1 ausgeben. Danach prüfst du der Reihe nach die nächstkleineren Zweierpotenzen, ob sie in die Zahl reinpassen. Falls ja, abziehen und 1 ausgeben, falls nicht, 0 ausgeben.
23. Januar 201015 j Autor Und wie komme ich auf die höchstmögliche zweierpotenz? wie meinst du das mit abziehen? kannst du mir das mal sprachlich(pseudocodemäßig) an einem Beispiel erklären, wie an der 8 oder 16?
23. Januar 201015 j kannst du mir das mal sprachlich(pseudocodemäßig) an einem Beispiel erklären, wie an der 8 oder 16? Du möchtest das bei Wikipedia selbst nach schlagen, da ist dies ausführlich (!) erklärt
23. Januar 201015 j Und wie komme ich auf die höchstmögliche zweierpotenz?Ausprobieren? wie meinst du das mit abziehen?Subtraktion. Minus rechnen. Wie nennt man das denn heute in der Schule?
24. Januar 201015 j Eine andere Möglichkeit für das alles wäre, Shiften... Damit kann man rauszufinden ob x an der n. Stelle eine 0 oder 1 (x >> n) & 1
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.