Astasor Geschrieben 23. Januar 2010 Geschrieben 23. Januar 2010 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 Zitieren
Klotzkopp Geschrieben 23. Januar 2010 Geschrieben 23. Januar 2010 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. Zitieren
Astasor Geschrieben 23. Januar 2010 Autor Geschrieben 23. Januar 2010 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. -.- Zitieren
Klotzkopp Geschrieben 23. Januar 2010 Geschrieben 23. Januar 2010 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. Zitieren
Astasor Geschrieben 23. Januar 2010 Autor Geschrieben 23. Januar 2010 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? Zitieren
flashpixx Geschrieben 23. Januar 2010 Geschrieben 23. Januar 2010 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 Zitieren
Klotzkopp Geschrieben 23. Januar 2010 Geschrieben 23. Januar 2010 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? Zitieren
konsti4u Geschrieben 24. Januar 2010 Geschrieben 24. Januar 2010 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 Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.