Logo des digitalen Schulbuchs inf-schule.de. Schriftzug in Zustandsübergangsdiagramm eines endlichen Automaten.

Übungen

Aufgabe 1: Ägyptische Multiplikation

Die Abbildung zeigt, wie die Ägypter Zahlen multipliziert haben. Mehr hierüber findest du im Abschnitt Einstieg - Ägyptische Multiplikation.

Ägyptische Multiplikation

Das folgenden Struktogramm zeigt, wie man diese Multiplikation automatisiert ausführen kann:

Struktogramm zur ägyptischen Multiplikation

(a) Teste das Verfahren mit der Multiplikationsaufgabe 11 * 23 = .... Überprüfe den zugehörigen Algorithmus mit einer Trace-Tabelle.

(b) Hier eine Implementierung zum Verfahren.
# Eingabe
zahl1 = int(input("Zahl 1: "))
zahl2 = int(input("Zahl 2: "))

# Verarbeitung
produkt = 0
while zahl1 > 0:
    if zahl1 % 2 == 1:
        produkt = produkt + zahl2
    zahl1 = zahl1 / 2
    zahl2 = zahl2 * 2

# Ausgabe
print("Produkt: ", produkt)

Teste, ob sich das Programm so verhält wie gewünscht.

(c) Das Programm liefert merkwürdige Ausgaben. Suche den Fehler mit zusätzlichen Ausgabeanweisungen. Korrigiere den Fehler und teste das Programm erneut.

X

Fehler melden

X

Suche