Začněte nyníZačněte zdarma

Hod kostkou

Vytvoříme nekonečný generátor! Tvým úkolem je definovat generátor simulate_dice_throws(). Ten generuje výsledky hodů šestistěnnou kostkou ve formě slovníku out. Každý klíč odpovídá jednomu možnému výsledku (1, 2, 3, 4, 5, 6). Každá hodnota je seznam: první prvek je počet výskytů daného výsledku a druhý je poměr výskytů k celkovému počtu hodů total. Příklad (pro total = 4):

{
  1: [2, 0.5],
  2: [1, 0.25],
  3: [1, 0.25],
  4: [0, 0.0],
  5: [0, 0.0],
  6: [0, 0.0]
}

Tip: použij funkci randint() z modulu random (již naimportován). Generuje náhodné celé číslo ze zadaného intervalu (např. randint(1, 2) může vrátit 1 nebo 2).

Toto cvičení je součástí kurzu

Procvičování otázek z kódovacích pohovorů v Pythonu

Zobrazit kurz

Pokyny k cvičení

  • Simuluj jeden hod a získej nové číslo.
  • Aktualizuj počet výskytů a poměr realizací.
  • Vrať aktualizovaný slovník pomocí yield.
  • Vytvoř generátor a simuluj 1000 hodů.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

def simulate_dice_throws():
    total, out = 0, dict([(i, [0, 0]) for i in range(1, 7)])
    while True:
        # Simulate a single toss to get a new number
        num = ____
        total += 1
        # Update the number and the ratio of realizations
        out[num][0] = ____
        for j in range(1, 7):
        	out[j][1] = round(____/____, 2)
        # Yield the updated dictionary
        ____

# Create the generator and simulate 1000 tosses
dice_simulator = ____
for i in range(1, 1001):
    print(str(i) + ': ' + str(____(____)))
Upravit a spustit kód