DD1310/DD1314/DA3009 Programmeringsteknik 2013

Laboration 5

Repetera strängmetoder, listmetoder, filer och objekt i kursboken.

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.

Gör Läxa 4 innan du börjar med denna labb!

Uppgifter

I filen worldpop.txt finns befolkningsdata för all världens länder.

  1. Skriv en klass som kan användas för att skapa objekt som representerar ett land (motsvarar en datarad i filen).
  2. Skapa en lista med objekt
  3. Beräkna världens befolkning
    Använd listan för att beräkna och skriva ut
  4. Lägg upp ditt färdiga program i Dropbox

Extrauppgifter:

Testning

Glöm inte att testa att ditt program fungerar som det ska.
Tips: Ett enkelt sätt att spara testdata är att köra programmet och kopiera allt som syns på skärmen.

Krav

Krav för programmen i labb 5:

Instuderingsfrågor (samma som i läxa 4)

  1. Titta på filen worldpop.txt.
    Vilka data innehåller filen?
  2. De första fem raderna i filen är information om filens innehåll.
    Skriv ett par satser som läser in enbart dessa fem rader från filen.
  3. Resten av raderna i filen innehåller data.
    Hur ska man läsa in dessa rader?
  4. En rad innehåller data åtskilda av "/". Föreslå en strängmetod som delar upp raden vid varje "/" och visa hur man anropar den.
  5. Vilken datatyp returnerar strängmetoden ovan?
  6. Titta på första dataraden i filen: "Afghanistan/AF/4/8151/33397"
    Rita (gärna för hand) ett objekt med dessa data.
  7. Hitta på namn för de attribut du ritat i objektet ovan.
  8. Vilka metoder skulle passa bra i den klass som representerar ditt objekt?
    Ge minst tre förslag.
  9. Måste man definiera flera klasser om man vill ha flera objekt i ett program?
  10. Vilken listmetod kan man använda för att lägga till ett element i en lista?
    Visa hur den anropas!
  11. Rita en lista med tre objekt (data från tre länder).
  12. Visa hur man med hjälp av en slinga kan skriva ut data för alla objekt i listan.

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 arbetet med P-uppgiften!