Jag heter
Anders Andersson
Uppgifter Pr1, utskrift och villkor
Utskrifter och beräkningar i Python
Nedanstående uppgifter ska göras i Python-konsolen, dvs du ska inte skapa en fil som sparas, om det inte framgår något annat i uppgiften.
Uppgift 1
Mata in följande rader i Python-konsolen och reflektera över resultatet:
print("2 + 2")
print("2" + "2")
print(2 + 2)
print(2.0 + 2)
print(0.1 + 0.2)
Uppgift 2
Använd en enda print
-sats som skriver ut följande (byt ut namnet mot ditt eget). Observera att utskriften är på två rader!
Uppgift 3
Skapa en Python-fil i Idle där du deklarerar följande strängvariabler (som du kan själv kan anpassa innehållet i):
= "Anders"
fnamn = "Andersson"
enamn = "Storgatan 1"
adr = "999 99"
postnr = "Storstad"
ort = 17 ålder
Använd en print
-sats, där du skriver ut variablerna som en fstring
, så att utskriften blir:
Hej, jag heter Anders och är 17 år.
(Resten av variablerna ska användas i en senare uppgift, så deklarera dessa även om de inte används här.)
Uppgift 4
Deklarera följande variabler, och spara i en fil i Idle:
= 103 # Sträcka i meter
sträcka = 13.2 # Tiden i sekunder
tid = sträcka / tid fart
Skapa en print
-sats som skriver ut farten på det aktuella föremålet avrundat till en decimal.
Uppgift 5
Deklarera följande variabler i Python:
= 1.5
a = 21.32 b
Använd en (enda) print
-sats med lämpliga formateringstecken för att skriva ut, och göra, följande beräkning. Du ska inte använda flera på varandra följande mellanslag inne i print
-satsen.
1.50
+ 21.32
-------
22.82
Uppgift 6
Använd filen med strängvariablerna från Uppgift 3 för att med en (enda) print
-sats med lämpliga formateringstecken för att skriva ut strängarna, högerjusterade enligt nedan. Du ska inte använda flera på varandra följande mellanslag inne i print
-satsen.
Anders Andersson
Storgatan 1
999 99 Storstad
Villkor i Python
Respektive programmeringsuppgift nedan ska sparas i en fil
Uppgift 7
Skapa ett program som ber dig mata in ett belopp med pengar. Programmet ska avgöra om det räcker till att köpa ett smycke av järn, silver eller guld. Skapa även ett flödesschema för programmet.
Priset för respektive typ av smycke deklareras som variabler, där ett järnmycke kostar 200 kr, ett silversmycke 500 kr och ett guldsmycke 1000 kr. Deklarera variabler för dessa priser och använd dessa i programmet.
# Exempelkörning 1
Ange belopp (i kr.) att handla för -> 300
Du har råd att köpa ett järnsmycke
# Exempelkörning 2
Ange belopp (i kr.) att handla för -> 800
Du har råd att köpa ett silversmycke
# Exempelkörning 3
Ange belopp (i kr.) att handla för -> 100
Du har inte råd att köpa något smycke
Utmanande uppgift: Utöka programmet så att det skriver ut det maximala antalet av respektive smycke som du kan köpa för ett angivet belopp. Programmet ska prioritera de dyraste smyckena.
# Exempelkörning 4
Ange belopp (i kr.) att handla för -> 1975
Antal guldsmycken du kan köpa: 1
Antal silvermycken du kan köpa: 1
Antal järnsmycken du kan köpa: 2
Belopp kvar: 75 kr
ⓘ Använd heltalsdivision, den ger heltalsdelen vid division. Exempel:
15 // 7 # Ger resultatet 2
20 // 7 # Ger resultatet 2
Uppgift 8
För de booleska variablerna a
, b
och c
gäller
a = True
b = True
c = False
Fundera ut vilket booleskt värde respektive uttryck nedan kommer att anta, och kontrollera det därefter i Python-konsolen:
(a and b) and c
a and b and c
(a and c) or b
a and b or c
Uppgift 9
Skapa ett program som läser in längderna på tre sidor. Programmet ska sedan avgöra om dessa sidor är sidorna i en rätvinklig triangel.
# Exempelkörning 1
Ange längden på sida 1 -> 3
Ange längden på sida 2 -> 4
Ange längden på sida 3 -> 5
Dessa sidor bildar en rätvinklig triangel
# Exempelkörning 2
Ange längden på sida 1 -> 3
Ange längden på sida 2 -> 4
Ange längden på sida 3 -> 6
Dessa sidor bildar inte en rätvinklig triangel
ⓘ För att kvadrera ett tal används exponentoperatorn **
. T ex gäller att om a = 2**3
så antar a
värdet 8.
Utmanande uppgift: Utöka programmet så att det även avgör om sidorna bildar en triangel över huvud taget.
# Exempelkörning 3
Ange längden på sida 1 -> 7
Ange längden på sida 2 -> 5
Ange längden på sida 3 -> 1
Dessa sidor kan inte bilda en triangel
Uppgift 10
Ett program som skriver ut vilket betyg en viss provpoäng motsvarar skulle kunna se ut så här:
= 15; c_gräns = 25; a_gräns = 35
e_gräns = int(input('Ange din provpoäng -> '))
poäng if poäng >= a_gräns:
print('A')
elif poäng >= c_gräns:
print('C')
elif poäng >= e_gräns:
print('E')
else:
print('F')
print('Programmet avslutas')
- Gör ett flödesschema för programmet.
- Skriv om programmet så att det använder de booleska operatorerna
not
,and
ochor
i villkoren.
Uppgift 11
Skapa ett program som ber dig mata in ett årtal. Programmet avgör om året är ett skottår. Ett årtal som inte är delbart med 4 är inte ett skottår. Är årtalet dessutom delbart 100 måste det också vara delbart med 400 för att vara ett skottår.
# Exempelkörning 1
Ange ett årtal -> 2020
År 2020 är ett skottår
# Exempelkörning 2
Ange ett årtal -> 2021
År 2021 är inte ett skottår
# Exempelkörning 3
Ange ett årtal -> 1800
År 1800 är inte ett skottår
# Exempelkörning 4
Ange ett årtal -> 2000
År 2000 är ett skottår
ⓘ Modulooperatorn (%
) ger resultatet noll om ett tal är jämnt delbart med ett annat.
# Exempel 1, delbart
# (21 är delbart med 3)
21 % 3
0
# Exempel 2, ej delbart
# (21 är ej delbart med 2)
21 % 2
1