Laboration 1: Biljettpriser
- Inlämningsdatum 7 okt 2022 av 18:00
- Poäng 1
- Lämnar in en filuppladdning
- Filtyper py, pdf och txt
Laboration 1 (den andra av de 7 inledande Python-laborationerna)
Innehåll:
- Kommentarer, datatyper, variabler, villkor, print, input, if-else
Bägge gruppmedlemmarna ska lämna in labben (programmet).
Om du blir klar med denna labb i tid får du en bonuspoäng (se inlämningsdatum för labben).
Förberedelser:
Läs kapitel 1-3 i kursboken (eller motsvarande):
- Introduction to Computers and Programming
- Input, Processing and Output (input, print)
- Decision Structures and Boolean Logic (if-else-satsen, <, == etc)
Python - Uppgifter och frågor
Planering
Läs igenom hela denna labblydelse innan du börjar.
-
Ditt program ska hjälpa till att besvara frågan: Vilket är billigast - månadskort eller reskassa?
- Titta på SL:s biljettpriser Links to an external site.
- Skriv ett program som hjälper en att undersöka vilken typ av biljett som är billigast!
- Du får själv bestämma hur avancerat programmet ska vara (se Kriterier nedan för minimikrav).
- Börja med att planera (på papper):
- Vad är indata respektive utdata till ditt program? Vilka typer av data är det?
- Vilka beräkningar behöver du göra? Skriv upp formlerna!
- Villket villkor ska du använda för att avgöra vad som är billigast?
- I vilken ordning ska alltihopa göras?
- Nu är det dags att skriva programmet!
- Tips: Skriv in en sats i taget, spara och provkör.
Testning
Nu ska du testa att ditt program fungerar som det ska.
Lägg in en kommentar längst ner i programmet där du skriver upp vilka indata du provkört programmet med och vad de gav för utdata.
Peer review
När det är 20 min kvar av labbtiden ska du lämna in ditt program i Canvas. Det behöver inte vara klart! Nu är det dags för Peer review. Du kommer att få granska någon annans uppgift med avseende på fyra kriterier. Kontrollera om kriterierna är uppfyllda. Du kan också ge konstruktiv feedback och skriva uppmuntrande kommentarer.
Efter labben
Hur tycker du att ditt eget arbete med labben fungerade? Borde du ha gjort något annorlunda? Fundera en stund, och skriv upp några tips till dig själv inför nästa labb!
Frivilliga extrauppgifter
Fler villkor
Ändra ditt program så att det även tar hänsyn till rabatter.
GUI - grafiskt gränssnitt
Ladda ner programmet konvertera.py och provkör.
Ändra sedan så att programmet istället räknar ut kostnaden för ett antal resor med enkelbiljett.
Glöm inte att byta titeln!
Extrasvår och tidskrävande extrauppgift (VARNING)
I London används Oyster card istället. Läs om reglerna för Oyster card Links to an external site. och skriv ett program som med lämpliga indata kan hålla reda på hur mycket pengar det är kvar på kortet.
Två exempel på skillnader:
- Oyster card kontrolleras både vid inpassering och utpassering, och kostnaden beror av om du passerat en zongräns.
- Om du reser så mycket en dag att du skulle tjänat på att använda en dagsbiljett istället för reskassa så blir det istället konstnaden för en dagsbiljett som dras från ditt kort.
Matris
Kriterier | Bedömningar |
---|---|
1. Grundkrav
Variabler, input, print, if-else och kommentarer används i programmet.
|
|
2. Författarnas namn + datum
Programmet har en kommentar överst med författarnas namn och datum.
|
|
3. Bra variabelnamn
Variabelnamnen gör programmet lätt att förstå.
|
|
4. Testdata
Testdata finns med i en kommentar sist i programmet.
|