259
Der Nachfolger in einer Tischrunde
4
>>> "I" * r
'IIII'
>>> "IIIII " * h + "I" * r
'IIIII IIIII IIIII IIII'
Und damit haben wir schon unsere Funktion
reihe()
beisammen:
def reihe(staebchen):
haufen = staebchen // 5
rest = staebchen % 5
ergebnis = "IIIII " * haufen + "I" * rest
return ergebnis
Der Nachfolger in einer
Tischrunde
Vielleicht denkst du dir, dass der Modulo-Operator
%
etwas sonderlich und
nur selten zu gebrauchen ist. Weit gefehlt, er wird oft verwendet! Sehen
wir uns wenigstens noch ein Beispiel an:
Stelle dir vor, vier Personen (oder
n
Personen) sitzen um einen Tisch und
spielen ein Spiel, sie kommen der Reihe nach dran. Wir programmieren eine
Funktion, die zu jedem Spieler den Nachfolger ermittelt. Dazu nehmen wir
an, dass die Spieler (wie schon gewohnt) von 0 bis 3 nummeriert sind. Wir
brauchen also eine Funktion, die so funktioniert:
>>> n = 4
>>> nachfolger(0, n)
1
>>> nachfolger(1, n)
2
>>> nachfolger(2, n)
3
>>> nachfolger(3, n)
0
nachfolger()
übernimmt eine Spielernummer und die Anzahl der Spieler
als Argumente und gibt die Nummer des nächsten Spielers zurück. Norma-
lerweise ist diese einfach um 1 größer. Doch wenn durch die Addition von 1
die Anzahl n erreicht wird, dann ist der Nachfolger die Nummer 0. Du
könntest das sicher leicht mit einer Verzweigung programmieren – versu-
che es!

Get Python für Kids now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.