raspeball

lottotrekning

Apr 2nd, 2022
743
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.62 KB | None | 0 0
  1. import random
  2.  
  3. # TrekkLotto_1 og TrekkLotto_2 returerer begge en vilkårlig lottorekke
  4. # men på forskjellige måter
  5.  
  6.  
  7. # i denne første funksjonen bruker vi de innebygde funksjonene i
  8. # random-modulen til å gjøre trekkningen litt enklere for oss selv
  9. def TrekkLotto_1():
  10.  
  11.     lottotall = range(1, 35) # endepunkter er ikke inklusive i range()
  12.  
  13.     rekke = random.sample(lottotall, 7) # henter 7 vilkårlige, unike elementer fra lottotall
  14.  
  15.     rekke.sort() # sørger for at tallene er i stigende rekkefølge
  16.  
  17.     return rekke # returnerer den trukne lottorekka
  18.  
  19.  
  20. # i denne andre funksjonen bruker vi en while-løkke til å trekke vilkårlige
  21. # tall mellom 1 og 34 (lottotallene), og returnere en liste av disse tallene
  22. def TrekkLotto_2():
  23.  
  24.     lottotall = list(range(1, 35)) # vi må bruke list for å kunne bruke normale liste-operasjoner
  25.  
  26.     rekke = [] # tom liste som skal holde tallene vi trekker
  27.  
  28.     while len(rekke) < 7: # løkka kjører helt til vi har trukket 7 tall
  29.         tall = random.choice(lottotall) # trekker et vilkårlig tall fra lottotallene
  30.         rekke.append(tall) # legger til tallet i rekka
  31.         lottotall.remove(tall) # fjerner det trukne tallet fra lottotallene, så det ikke kan bli trukket igjen
  32.  
  33.     rekke.sort() # sørger for at tallene er i stigende rekkefølge
  34.  
  35.     return rekke # returnerer den trukne lottorekka
  36.  
  37.  
  38. # definerer funksjonen som skal kjøre selve lottotrekningen ved å kalle
  39. # en av de to funksjonene som
  40. def Lottotrekning():
  41.     vinnerrekke = TrekkLotto_1() # lager en vilkårlig rekke som er vinnerrekka
  42.     # vinnerrekke = TrekkLotto_2() # man kan kalle den andre funksjonen om man foretrekker denne
  43.  
  44.     ant_trekninger = 0 # initierer en variabel som skal telle antall trekninger
  45.  
  46.     trekk = TrekkLotto_1() # trekker en vilkårlig rekke og sammenlikner mot vinnerrekka
  47.  
  48.     while vinnerrekke != trekk: # løkka kjører så lenge som vi ikke har trukket vinnerrekka
  49.         ant_trekninger += 1 # oppdaterer antall trekninger
  50.         trekk = TrekkLotto_1() # trekker ny rekke
  51.  
  52.     # returnerer antallet trekninger, vinnerrekka og den siste rekka som er trukket
  53.     # som en slags sikkerhetssjekk på at programmet fungerer
  54.     return ant_trekninger, vinnerrekke, trekk
  55.  
  56.  
  57. # main-funksjonen kaller Lottotrekning for å kjøre programmet
  58. def main():
  59.     n, vinner, siste = Lottotrekning() # kaller Lottotrekning for å kjøre lottotrekningen
  60.  
  61.     print(f"vinnerrekka var: {vinner}")
  62.     print(f"Den siste rekka som ble trukket var: {siste}")
  63.     print(f"Antallet trekninger før 7 rette var: {n}")
  64.  
  65.  
  66. # kjører programmet
  67. if __name__ == '__main__':
  68.     main()
  69.  
Advertisement
Add Comment
Please, Sign In to add comment