Eingabe : natürliche Zahlen a, b
(gewünschtes) Ergebnis: a * b
Zahl c := a; Zahl d := b; Zahl e := ???;
-- Invariante: c * d + e = a * b
solange (c > 0) wiederhole {
wenn (c ist ungerade) dann {
???
}
c := abrunden (c / 2);
???
}
Ergebnis ist in ???