Pythonuppgift 1.1
Skriv lösningarna till uppgifterna i en och samma fil och testa koden själv innan du använder rättningsskriptet. Att kunna testa sin kod är en viktig del av att programmera!
Att lära dig från uppgifterna
- Förstå vad funktioner är och hur de används.
- Förstå vad ett returvärde är.
- Känna till olika datatyper så som till exempel heltal, flyttal och strängar och veta hur man konverterar mellan dem.
- Kunna använda python som en miniräknare.
Godkänt
För att få godkänt krävs 100 poäng.
Uppgift 1.1.1 (5p)
Skapa en funktion som heter return_five()
som returnerar strängen
"five"
.
Testa den genom att skriva ut dess returvärde.
Lär dig vad en funktions returvärde är för något.
Uppgift 1.1.2 (5p)
Skriv en funktion som heter print_five()
som inte innehåller någon
retur-sats, utan skriver ut strängen "five"
i terminalen.
Funktioner som inte explicit returnerar ett värde kommer att returnera ett
standardvärde. Vad är det värdet? Prova att ta reda på det genom att skriva
ut det funktionen print_five()
returnerar.
Uppgift 1.1.3 (5p)
Skriv en funktion add_strings()
som använder operatorn +
fast på
strängar. Utför "hej" + "san"
i funktionen och returnera resultatet.
Kan du slå ihop flera strängar än två? Spelar ordningen någon roll? Kan man ta en sträng minus en annan? Prova!
Uppgift 1.1.4 (5p)
Skriv en funktion use_the_var()
som först tilldelar variabeln value
värdet 5 och sedan returnerar value * 5
. Funktionen ska inte ta in något
argument, utan variabeltilldelningen görs i funktionen.
Spelar det någon roll vad du döper variabeln till? Prova!
Uppgift 1.1.5 (5p)
Skriv en funktion use_the_arg(a_string)
som tar in en sträng och skriver
ut den med print(a_string)
. Returnera även värdet som fås in i argumentet
a_string
.
Lär dig vad argumentet i en funktion är för något.
Uppgift 1.1.6 (5p)
Skriv en funktion to_string(a_value)
som tar ett värde och konverterar
till en sträng. Returnera det konverterade värdet.
Uppgift 1.1.7 (5p)
Skriv en funktion to_integer(a_value)
som tar ett värde och konverterar
till ett heltal (ej avrundning). Returnera det konverterade värdet.
Uppgift 1.1.8 (5p)
Skriv en funktion to_float(a_value)
som tar ett värde och konverterar
till ett flyttal. Returnera det konverterade värdet.
Vad var skillnaden mellan 1.1.6, 1.1.7 och 1.1.8?
Vad är det för skillnad mellan ett heltal och ett flyttal? Hur kan vi se skillnaden?
Varför får vi ett felmeddelande när vi skriver to_float("exempel")
? Kolla
på vad meddelandet säger.
Uppgift 1.1.9 (10p)
Överkurs
Generalisera det du skrev ovan genom att skriva en funktion
to_any_type(a_value, a_type)
som tar in ett värde och en typ och
konverterar värdet till typen. Returnera det konverterade värdet.
Uppgift 1.1.10 (10p)
Skriv en funktion print_type(a_value)
som tar in ett värde och skriver ut
datatypen som a_value har. Inget ska returneras.
Tips: Använd den inbyggda funktionen type()
.
Uppgift 1.1.11 (5p)
Skriv en funktion subtract(value1, value2)
som returnerar resultatet av
value1
minus value2
. När du testar funktionen, skicka bara in heltal
och eller flyttal.
Lär dig om heltal och flyttal i Python.
Observera vad som händer när du har heltal - heltal
, flyttal - flyttal
,
heltal - flyttal
, flyttal - heltal
. Vad blir det för datatyp på
resultatet?
Uppgift 1.1.12 (10p)
Skriv en funktion split_bill(amount, number_of_people)
som beräknar hur
stor del av en gemensam nota som varje person ska betala om man delar notan
jämnt. Funktionen tar två argument: beloppet som ska delas på samt antal
personer som ska dela på beloppet.
Se till att funktionen både returnerar svaret, samt skriver ut svaret.
Uppgift 1.1.13 (10p)
Python har en modul med matematiska funktioner.
Skriv en funktion round_up(value)
som avrundar ett flyttal uppåt till det närmaste heltal som är större än value. Returnera det avrundade talet.
Importera modulen math
och använd funktionen math.ceil()
.
Uppgift 1.1.14 (10p)
Skriv en funktion round_down(value)
som avrundar ett tal nedåt och
returnerar det avrundade talet.
Googla på dokumentationen för modulen math
och kolla om det finns en
passande funktion.
Uppgift 1.1.15 (10p)
Skriv en funktion fahrenheit_to_celsius(temperature)
som konverterar en
temperatur (representerad som ett flyttal) från fahrenheit till celsius
och returnerar värdet.
Uppgift 1.1.16 (5p)
Skriv en funktion celsius_to_fahrenheit(temperature)
som konverterar en
temperatur (representerad som ett flyttal) från celsius till fahrenheit
och returnerar värdet.
Om du har gjort 1.1.15 och 1.1.16 rätt ska
fahrenheit_to_celsius(celsius_to_fahrenheit(100))
alltså returnera
100.0
(Det går bra om den returnerar 100
).
Uppgift 1.1.17 (10p)
Skriv en funktion pythagoras(x,y)
som tar in längden på två sidor
(sidorna som tillsammans bildar 90 grader mellan varandra) i en rätvinklig
triangel och returnerar längden på hypotenusan med hjälp av pythagoras
sats.
Så pythagoras(3,4)
ska alltså returnera 5
Sidansvarig: Johan Falkenjack
Senast uppdaterad: 2023-01-15