Hallo liebe Wissenden, das habe ich gerade in einer Zeitschrift
gefunden und werde nicht so ganz schlau draus:
Vielleicht könnt ihr mir ja des Rätsels Lösung bringen?
1.) lies a und b ein
2.) x = a; y = b; z = 0;
3.) Solange (x > 0) tue
4.) wenn (x ungerade) z = z + y;
5.) y = y * 2;
6.) x = x / 2;
7.) drucke z
PS:Meine Vermutung ist „a*b“ wenn a>=5 und a ungerade.
Wer hat mehr Ahnung davon als ich und antwortet mir?
Bauernmultiplikation
Dein Algorithmus beschreibt
die sog. „Bauernmultiplikation“.
(Ich glaube, aus Knaur’s Buch
der Mathematik oder irgendwo
in einem ähnlichen populärwissenschaftlichen
Buch mal gelesen)
Ein in Vergessenheit geratenes
Multiplikationsverfahren, bei dem
man nur Verdoppeln und Halbieren
und Addieren können muss.
1.) lies a und b ein
2.) x = a; y = b; z = 0;
3.) Solange (x > 0) tue
4.) wenn (x ungerade) z = z + y;
5.) y = y * 2;
6.) x = x / 2;
7.) drucke z
ich fuer meinen teil frage mich wie die schleife terminieren
soll…
x=x/2 --> x=0 nach spätestens 64 Durchläufen, oder?
bedingt.
nur wenn der typ festgelegt ist/wird.
fiel mir vorhin gerade ein, dass man nach der x-teilung x immer auf nen int abrunden muss… dann teminiert es auch…