7050 if-sats
Det normala är att koden körs rad för rad. Med en if-sats kan man välja om ett antal kod-rader ska göras eller ej.
Exempel
text = input("Ange ett heltal: ")
tal = int(text)
if tal % 2 == 0:
print('talet är jämnt')
else:
print('talet är udda')
print('klart')
flödesdiagram
Syntax
if-sats
if villkor:
#sats 1
#sats 2
#...
#kod efter if-sats
if-else-sats
if villkor:
#sats 1
#sats 2
#...
else:
#sats 1
#sats 2
#...
#kod efter if-sats
if med elif och else
if villkor:
#sats 1
#sats 2
#...
elif villkor:
#sats 1
#sats 2
#...
else:
#sats 1
#sats 2
#...
#kod efter if-sats
if med flera elif och else
if villkor:
#sats 1
#sats 2
#...
elif villkor:
#sats 1
#sats 2
#...
elif villkor:
#sats 1
#sats 2
#...
else:
#sats 1
#sats 2
#...
#kod efter if-sats
fler if-satser
Alla if-satser måste ha en if-del.
Därefter följer eventuellt en eller flera elif.
Sist kommer eventuellt else.
Jämförelseoperatorer
operator | betydelse | exempel |
---|---|---|
== | lika | x == y |
!= | ej lika | x != y |
> | större än | x > y |
< | mindre än | x < y |
>= | större eller lika med | x >= y |
<= | mindre eller lika med | x <=y |
Sammansatta villkor
Villkor kan sättas samman med och samt eller. Två exempel följer.
Exempel 1
tal är större eller lika med 0 och tal är mindre än 10
Exempel 2
svar är "Oslo" eller svar är "oslo"
Exempel 1, som del av kod nedan.
tal = int(input("Mata in ett heltal: "))
if tal >= 0 and tal < 10:
print("positiv ental")
else:
print("negativt eller flersiffrigt")
Exempel 2, som del av kod nedan.
svar = input("Ange Norges huvudstad")
if svar == "Oslo" or svar == "oslo":
print("rätt")
else:
print("fel, rätt svar är Oslo")
operator | innebörd |
---|---|
and | och |
or | eller |
Uppgifter
1
Be användaren mata in ett tal.
Om talet är mindre än noll skriv att det är negativt. Annars skriv att det är positivt.
2
Be användaren mata in näst sista siffran i sitt personnummer.
Om siffra är udda skriv ut: du är kille
Om siffran istället är jämn skriv ut: du är tjej
Tips: Ovan finns exempel på hur man avgör om ett tal är udda eller jämnt.
3
Be användaren mata in två tal. Berätta för användaren vilket som är störst.
4
Be användaren mata in ett tal. Ge feedback.
0 - 9 är ensiffriga tal
10 - 99 är tvåsiffriga tal
100 - 999 är tresiffriga tal
1000 - ... är minst fyrsiffriga tal
tal mindre än 0 är negativa
5
Be användaren mata in tre tal. Berätta vilket som är minst.
6
Be användaren mat in tre tal.
Programmet skriver ut de tre talen i storleksordning. Det minsta kommer först.
7
Be användaren mata in födelsemånad.
Programmet skriver ut vilken årstid användaren är född i.
8
Extra - för den som är snabb
Kort om slumptal, se kod nedan. Första raden import random
ger tillgång till slumptal.
Koden random.randint(1, 6)
ger slumptal mellan 1 och 6, som på en vanlig tärning.
import random
slumptal = random.randint(1, 6)
print(slumptal);
101
Slumpa ett tal.
Om talet är 6 skriv ut du vann. Annars skriv ut du förlorade.
102
Ange mellan vilka tal du vill ha ett slumptal.
Slumpa tre tal i detta intervall. Skriv ut dem.
Eftertanke: Hur blir det om du vill slumpa 100 tal. Tänk, men skriv ingen kod.
103
Kasta två tärningar. Skriv ut resultatet.
Lika ger vinst. Annars förlust. Men två sexor ger storvinst.
104
Kasta tre tärningar. Skriv ut resultatet.
Lägg till en funktion av nedanstående i taget.
- Tre lika ger vinst.
- Tre sexor ger storvinst.
- Stege ger stegvinst. (Svår)
- Hitta på egna vinstvillkor.
105
Hitta på ett eget tärningsspel.
Börja litet och bygg ut stegvis.