Python - modul random (generování náhodných čísel)

Z GeoWikiCZ
Verze z 2. 9. 2006, 11:56, kterou vytvořil Landa (diskuse | příspěvky) (+kategorie programovani,python)

Nasledující program počítá 10 simulací výpočtu střední hodnoty hodu kostkou pro 1000 pokusů (střední hodnota je 3.5)

#!/usr/bin/python

import random

for i in range(10):
   N = 1000
   s = 0
   for i in range(N):
       s = s + randint(1,6)
 
   print float(s)/N,
3.504 3.584 3.438 3.462 3.49 3.463 3.416 3.602 3.441 3.479 

Program rozdává karty na licitovaný mariáš

#!/usr/bin/python

from random import *

hodnota = ("7","8","9","spodek","filek","kral","10","eso")
barva  = ("cervena", "zelena", "zaludy",  "kule")
list = [[0]*8,    [0]*8,    [0]*8,   [0]*8]

n = 0                                 # pocet rozdanych karet
for hrac in range(1, 4):      # hrac 1, 2, 3
   while n < hrac*10:         
      b = randint(0, 3)         # nahodna barva 
      h = randint(0, 7)         # nahodna hodnota
      if list[b][h] == 0:         # doposud nerozdana karta
         list[b][h] = hrac    
         n = n + 1  

for hrac in range(4):         # talon 0, hrac 1, 2, 3
   print           
   print ("talon:","hrac 1:","hrac 2:","hrac 3:")[hrac]
 
   for b in range(4):
      for h in range(8):
         if list[b][h] == hrac:
           print "  ", barva[b], hodnota[h]
talon:
  cervena 9
  zaludy filek

hrac 1:
  cervena 8
  cervena 10
  cervena eso
  zelena 7
  zelena 9
  zelena kral
  zaludy eso
  kule 8
  kule spodek
  kule eso

hrac 2:
  cervena spodek
  cervena kral
  zelena filek
  zelena 10
  zaludy 8
  zaludy spodek
  zaludy kral
  kule 7
  kule filek
  kule 10

hrac 3:
  cervena 7
  cervena filek
  zelena 8
  zelena spodek
  zelena eso
  zaludy 7
  zaludy 9
  zaludy 10
  kule 9
  kule kral

[ Zpět ]