7070 slumptal

Här följer en genomgång av hur man kan generera slumptal.

För att kunna generera slumptal behöver vi ha tillgång till biblioteket random. Det kan vi få genom att skriva import högst upp i filen, se exempel nedan.

Heltal

Kort om intervall

I matematik använder man följande beteckningar för intervall.

[2, 4] betecknar intervallet 2 <= x <= 4

(2, 4) betecknar intervallet 2 < x < 4

[2, 4) betecknar intervallet 2 <= x < 4

Hakparenteser anger att gränsen tillhör intervallet medan vanliga parenteser anger att gränsen inte tillhör intervallet.

slumpade heltal

import random
# [0, stop)
print(random.randrange(3)) # 0, 1, eller 2 (ej 3)
# [start, stop)
print(random.randrange(2, 6)) # 2, 3, 4, eller 5 (ej 6)
# [start, stop), step
print(random.randrange(5, 11, 2)) #5, 7, eller 9 (ej 11)

Funktionen randint kan också användas, se dokumentationen.

Decimaltal

import random
# [0.0, 1.0)
print(random.random())

Mer information

Generate pseudo-random numbers, Pyton.org

Uppgifter

1 Kasta två tärningar

A

Två sexsidiga tärningar kastas. Två lika tärningar ger vinst.

En körning kan se ut som nedan:

Vill du spela? j/n: j
2 3
förlust
Vill du spela? j/n: j
2 6
förlust
Vill du spela? j/n: j
6 6
vinst
Vill du spela? j/n: j
4 4
vinst
Vill du spela? j/n: n
Vad roligt att du spelade en stund!

B

Utöka på följande vis. Sexor ger sex-vinst.

C

Utöka så att stege ger steg-vinst.

D

För betyg > E.

Nu är det dags att spela om pengar. Ett spel kostar en krona. Kan hela tiden välja på om man vill spela, sätta in mer pengar eller avsluta. En körning kan se ut som nedan.

Vinstplan två lika - 5 kr en sexa - 3 kr stege - 3 kr

Välkommen att kasta träning
Ett spel kostar 1 krona
Vinstplan:
två lika - 5 kr
en sexa - 3 kr
stege - 3 kr

Välj spela (s), sätt in pengar (i), eller avsluta (a): i
Ange belopp att sätta in: 5
Att spela för: 5
Välj spela (s), sätt in pengar (i), eller avsluta (a): s
1 6
sex-vinst + 3kr
Att spela för: 7
Välj spela (s), sätt in pengar (i), eller avsluta (a): s
1 5
förlust
Att spela för: 6
Välj spela (s), sätt in pengar (i), eller avsluta (a): s
6 4
sex-vinst + 3kr
Att spela för: 8
Välj spela (s), sätt in pengar (i), eller avsluta (a): s
2 3
steg-vinst + 3k
Att spela för: 10
Välj spela (s), sätt in pengar (i), eller avsluta (a): s
6 6
vinst + 5kr
Att spela för: 14
Välj spela (s), sätt in pengar (i), eller avsluta (a): s
4 6
sex-vinst + 3kr
Att spela för: 16
Välj spela (s), sätt in pengar (i), eller avsluta (a): a
Vad roligt att du spelade en stund!

2 Lucky Seven

A

Det är ett banditspel. Tre tal slumpas. Möjliga slumptal är 0, 1, 2, ..., och 9. Talen visas. Om alla talen är lika blir det vinst. Tre sjuor ger dubbel vinst. Det ska gå att spela flera gånger.

En körning kan se ut som nedan.

Skriv j för att spela och n för att sluta j
0 8 2
förlust
Skriv j för att spela och n för att sluta j
6 8 5
förlust
Skriv j för att spela och n för att sluta n
Tack för att du spelade, välkommen åter!

B

Lägg till så att två lika tal ger en minivinst.

C

Lägg till så att en sjua ger sjuvinst.

D

För betyg större än E.

Nu kostar varje spel en krona. Vinsten är 50 kronor. Minivinsten är 5 kronor och sjuvinsten är 2 kronor. Vid start har man 100 kronor. En körning kan se ut som nedan. Se till att man inte kan spela när pengarna är slut.

Kvar att spela för: 100 kronor
Spela mer? j/n: j
1 8 6
förlust
Kvar att spela för: 99 kronor
Spela mer? j/n: j
8 9 1
förlust
Kvar att spela för: 98 kronor
Spela mer? j/n: j
2 1 1
minivinst + 5kr
Kvar att spela för: 102 kronor
Spela mer? j/n: j
4 0 6
förlust
Kvar att spela för: 101 kronor
Spela mer? j/n: j
6 3 8
förlust
Kvar att spela för: 100 kronor
Spela mer? j/n: j
7 0 2
sjuvinst + 2rk
Kvar att spela för: 101 kronor
Spela mer? j/n: n
Tack för att du spelade, välkommen åter!

3 Sten sax påse

Skriv ett program där man upprepade gånger kan spela sten sax påse mot datorn.