4.5 WRM d) - combine Methode

Disclaimer: Dieser Thread wurde aus dem alten Forum importiert. Daher werden eventuell nicht alle Formatierungen richtig angezeigt. Der ursprüngliche Thread beginnt im zweiten Post dieses Threads.

4.5 WRM d) - combine Methode
Hallo,

und zwar wollte ich mal fragen wie man bei der combine Methode mit den Potenzzahlen rechnen kann? Man muss ja nach Gleichung (2) den low, mid und up Teil miteinander verrechnen, wobei man den up teil 2^2bits bzw. den mid teil *2^bits berechnen soll.

Nach meinem aktullen Lösungsweg nur mit left shift Operatoren zu rechnen, komm ich dabei leider nicht auf das richtige Ergebnis, weshalb ich um Tipps fürs richtige Vorgehen bitten wollte.

Danke im Voraus


Meine Lösung basiert auch auf das linksshiften. Du bist also schonmal auf dem richtigen Weg. Wie verrechnest du deine Ausgabe? Ich habe das gleiche bei up und mid.


Ich hatte bei up:

up << 1 << 1 << bits

und bei mid

mid << 1 << bits

Es gilt im binaersystem:
100 * 2^1 = 1000 = 100<<1

Wir definieren uns mal das n als n:= a+a mit a aus den natuerlichen Zahlen
Dann gilt nach mathematischen regeln: 2^n = 2^a+a = 2^a * 2^a
Also folgt im binaersystem:
1002^n =1002^a+a = 100*2^a * 2^a

1 „Gefällt mir“

Ich steh leider vollkomen auf dem Schlauch ftwcheese :-/ Habe das jetzt so implementiert, wie es nach deiner Erklärung für mich sinnvoll erscheint, aber es ist immernoch falsch.

up << 2 << bits
mid << bits 

Entschuldigung für meine Bildungsresistenz ^^


up << 2 << bits ist ja das gleiche wie up2^(22^bits). was du aber willst ist natürlich up2^(2bits). Du musst also zuerst bits mit 2 multiplizieren und dann up mit 2 hoch dem multiplizieren.

Hab mir grad durchgelesen was ich geschrieben hab und is ziemlich behindert formuliert also tl;dr:
n << m ist immer das gleich wie n*(2^m).

1 „Gefällt mir“

Dann schreibe ich es mal maximal trivial hin:
2^1 = 1<<1
2^n = 1<<n
2^(a+a) = (2^a)(2^a) = (1<<a)(2^a)
Den letzten Schritt musst du dir schon selber denken

1 „Gefällt mir“

Jetzt hab ich’s geschafft, vielen dank :slight_smile: