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

Wiederholte Berechnungen

Ein Blick in die Zukunft!

Zur Simulation der Entwicklung der Mäusepopulation haben wir bisher ein Programm entwickelt, das die Berechnungen für einen einzigen Simulationsschritt durchführt. Interessanter wird es, wenn die Simulation über mehrere Schritte laufen soll.

Das folgende Programm zeigt, wie man so etwas in Python umsetzen könnte.

# Initialisierung
jung = 6
erwachsen = 9
alt = 12

# Verarbeitung
schritt = 0

hilf = erwachsen*4 + alt*2
alt = erwachsen // 3
erwachsen = jung // 2
jung = hilf
schritt = schritt + 1

hilf = erwachsen*4 + alt*2
alt = erwachsen // 3
erwachsen = jung // 2
jung = hilf
schritt = schritt + 1

hilf = erwachsen*4 + alt*2
alt = erwachsen // 3
erwachsen = jung // 2
jung = hilf
schritt = schritt + 1

# ...

# Ausgabe
print('')
print('Anzahl der Schritte: ', schritt)
print('Die berechneten Populationswerte sind:')
print('Anzahl junger Maeuse: ', jung)
print('Anzahl erwachsener Maeuse: ', erwachsen)
print('Anzahl alter Maeuse: ', alt)

Aufgabe 1

Wie müsste man das Programm ergänzen, wenn genau 10 (bzw. 100) Simulationsschritte durchgeführt werden sollen? Warum ist der gezeigte Lösungsansatz nicht sonderlich praktisch?

Aufgabe 2

Das folgende Programm zeigt, wie man die wiederholte Berechnung des Populationszustands mit einer Wiederholungsanweisung beschreibt.

# Initialisierung
jung = 6
erwachsen = 9
alt = 12
# Verarbeitung
schritt = 0
while schritt < 10:
    hilf = erwachsen*4 + alt*2
    alt = erwachsen // 3
    erwachsen = jung // 2
    jung = hilf
    schritt = schritt + 1
# Ausgabe
print('')
print('Anzahl der Schritte: ', schritt)
print('Die berechneten Populationswerte sind:')
print('Anzahl junger Maeuse: ', jung)
print('Anzahl erwachsener Maeuse: ', erwachsen)
print('Anzahl alter Maeuse: ', alt)

(a) Erkläre, warum der Simulationsschritt hier genau 10 mal durchgeführt wird.

(b) Teste das Programm. Variiere auch die vorgegebene Anzahl der Simulationsschritte und vergleiche die ausgegebenen Werte mit bereits per Hand berechneten Werten.

(c) Ändere das oben gezeigte Programm so ab, dass die Populationswerte in jedem Schritt ausgegeben werden.

Hinweis: Mit Wiederholungen werden wir uns detaillierter in weiteren Abschnitten beschäftigen.

X

Fehler melden

X

Suche