Göm meny

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! För tips på hur du testar din kod, se sidan Testa kod.

Du kan bara köra automaträttning av en specifik pythonuppgift en gång var 8:de minut.

Information om hur du använder rättningsskriptet hittar du på sidan Rättningsskript. Information om inlämning hittar du på sidan Inlämningar.

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.

pythagoras(3,4) ska alltså returnera 5


Sidansvarig: Jody Foo
Senast uppdaterad: 2022-08-22