summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xbuffet_lotterie2.py24
1 files changed, 11 insertions, 13 deletions
diff --git a/buffet_lotterie2.py b/buffet_lotterie2.py
index 08ae0c4..434f7d4 100755
--- a/buffet_lotterie2.py
+++ b/buffet_lotterie2.py
@@ -12,23 +12,21 @@ einfluss = 0
offset = 0
while fehlt_noch > 0:
runden += 1
- e = floor((len(Silben) + offset) / teilnehmer) # e Runden ist das Geburtstagskind dran, bis einer gehen darf
- #offset = (len(Silben) + offset) - e * teilnehmer
+ e = floor((len(Silben) + offset) / teilnehmer) + 1 # e Runden ist das Geburtstagskind dran, bis einer gehen darf
+ offset = (((len(Silben) + offset) % (teilnehmer)) - 1) % teilnehmer # nach e Runden fängt Teilnehmer Nummer `offset` an, 0 ist das Geburtstagskind
- offset = ((len(Silben) + offset) % (teilnehmer)) - 1 # nach e Runden fängt Teilnehmer Nummer `offset` an
- offset %= teilnehmer
- print(offset, teilnehmer)
- teilnehmer -= 1
+ einfluss += e # Geburtstagskind kann insgesamt `e`-mal dem Essen näher kommen
+ fehlt_noch = teilnehmer - offset # um jetzt dran sein zu müssen, hätte das Geburtstagskind `fehlt_noch`-mal zwei Silben sagen müssen
- einfluss += e # Geburtstagskind kann e-mal "den Zeiger nach vorne pushen"
- #fehlt_noch = teilnehmer - offset
- print(str(e) + " Runden " + " offset " + str(offset))
- if False: #e != 0:
- print(fehlt_noch)
- if not fehlt_noch > einfluss:
- print("Das Geburtstagskind muss erst " + str(einfluss - fehlt_noch) + "-mal zwei Silben und dann " + str(fehlt_noch) + "-mal eine Silbe sagen, bis es dran ist.")
+ print("Nach " + str(e) + " Runden fängt " + str(offset) + " an")
+ if e > 0: # falls das Geburtstagskind dran kam
+ print("Es fehlten " + str(fehlt_noch))
+ if fehlt_noch <= einfluss:
+ print("Das Geburtstagskind muss erst " + str(fehlt_noch) + "-mal zwei Silben und dann " + str(einfluss - fehlt_noch) + "-mal eine Silbe sagen, bis es dran ist.")
break
+ teilnehmer -= 1 # einer geht
+
print(runden)
# Das Geburtstagskind kommt nach `j` Runden `einfluss`-mal dran