DD1310/DD1314/DA3009 Programmeringsteknik 2012

Laboration 3

Läs kapitel 4-5 och 7 i kursboken: Slumptal, for-slingan, strängar, listor, tupler, dictionary, filer.

Labben redovisas på veckans övning. Det Pythonprogram du skriver kan ge 0-2 bonuspoäng (beroende på hur väl det uppfyller kraven).
Instuderingsfrågorna redovisas med ett prov, som också kan ge max 2 bonuspoäng.

Uppgift: Skriv ett program som anordnar ett glosförhör.
Programmet ska Körexempel (användarens inmatning i fetstil):

*** Dagens glosor ***

Här är gloslistan!
Svenska Setswana
====================
pumpa lerotse
gröt bogobe
kött nama
spenat morogo
fil madila

Enkla glosförhöret
==================
Översätt pumpa: lero
Fel, pumpa är lerotse.
Översätt gröt: bogobe
Rätt!
Översätt kött: mama
Fel, kött är nama.
Översätt spenat: morogo
Rätt!
Översätt fil: madiila
Fel, fil är madila.
Du fick 2 rätt

Slumpade glosor
===============
Hur många frågor vill du ha? 3
Översätt spenat: morogo
Rätt!
Översätt gröt: boboge
Fel, gröt är bogobe.
Översätt kött: nama
Rätt!
Du fick 2 rätt.

Extrauppgifter:

Testning

Glöm inte att testa att ditt program fungerar som det ska.

Krav

Instuderingsfrågor

  1. Vilken modul måste man importera för att få slumptal?
  2. Ange en slumpfunktion som returnerar heltal.
  3. Hur används range i en for-slinga? Ge ett exempel!
  4. Vad är index i en sträng? Visa med ett exempel.
  5. Namnge och beskriv tre metoder för en sträng.
  6. Strängar och tupler är oföränderliga (immutable). Vad innebär det?
  7. Hur tar man reda på hur många element som finns i en lista?
  8. Namnge och beskriv tre metoder för en lista.
  9. Visa hur man skriver ut alla elementen i en lista.
  10. Hur lägger man in ett nyckel-värde-par i en dictionary? Visa med ett exempel.
  11. Namnge och beskriv tre metoder för en dictionary.
  12. Visa med ett exempel hur referenser fungerar.

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!