DD1311 Programmeringsteknik med PBL

Labbveckan - specialuppgift

  1. Skriv ett program som skriver ut en multiplikationstabell. Låt användaren välja vilken tabell som ska skrivas ut.
    Körexempel:
    	Vilken tabell vill du se? 7
    	7 14 21 28 35 42 49 56 63 70 77 84
    	

  2. Skriv ett program som skriver ut en slumpvis vald multiplikationstabell.

  3. Skriv ett program som skriver ut alla multiplikationstabeller 1-12.
    Körexempel:
    	1 2 3 4 5 6 7 8 9 10 11 12
            2 4 6 8 10 12 14 16 18 20 22 24
            3 6 9 12 ...
    	

  4. Skriv ett program som läser in temperaturer uppmätta vid bestämda tidpunkter under ett dygn. Sedan ska programmet skriva ut högsta och lägsta temperaturen, samt medeltemperatur för dygnet. Körexempel: (användarens inmatning i fetstil)

    Mata in temperaturer för tidpunkterna nedan
    kl 06.00: 3.5
    kl 09.00: 10.0
    kl 12.00: 14.5
    kl 15.00: 14.0
    kl 18.00: 12.5
    kl 21.00: 9.0
    kl 24.00: 6.5

    Högst temperatur var 14.5
    Lägst temperatur var 3.5
    Medeltemperaturen var 11.666666666666666

  5. Skriv ett program som lagrar veckans dagar i en dictionary, med veckonamnet som nyckel och dagens nummer som värde. Sen ska programmet upprepade gånger fråga efter veckodag och skriva ut dagens nummer. Använd en while-slinga. Programmet ska avslutas när man trycker Enter.
    Körexempel:
    Vilken veckodag? onsdag
    Det är dag 3
    Vilken veckodag? fredag
    Det är dag 5
    Vilken veckodag? nbvhbsdsgiur
    Den dagen finns inte.
    Vilken veckodag?

  6. I filen dag.txt finns sju temperaturer (uppmätta vid bestämda tidpunkter under ett dygn). Skriv en funktion som läser in alla temperaturerna från filen och beräknar högsta och lägsta temperaturen, samt medeltemperatur för dygnet. Filvariabeln ska vara parameter till funktionen, och min-, max- och medeltemperatur ska vara returvärden från funktionen.

    Testa funktionen!

  7. I filen vecka.txt finns temperaturer för sju dagar lagrade. Skriv en funktion som anropar den funktion du skrev ovan för att läsa in temperaturdata för alla sju dagarna. Filvariabeln ska vara parameter till funktionen, och listor med min-, max- och medeltemperatur ska vara returvärden från funktionen.

    Testa funktionen!

  8. Skriv ett program som lagrar veckans dagar i en dictionary, med veckonamnet som nyckel och dagens nummer som värde. Sen ska programmet fungera så här:
    Vilken veckodag? fredag
    Lägsta temperatur den dagen var 6.8
    Maxtemperatur den dagen var 18.8
    Medeltemperatur den dagen var 12.2

    Vilken veckodag?
    .
    .
    .

    Programmet ska avslutas när man trycker Enter.

  9. Nu ska du modifiera programmet ovan så att det använder en klass för att hantera temperaturdata för en dag.
    Definiera en ny klass (i en ny fil): Dag.
    Klassen ska ha två attribut, dagens namn och en lista med temperaturer.
    Klassen ska ha följande metoder:

    Skriv ett litet testprogram som skapar ett Dag-objekt och provar alla metoderna.

  10. Gör en kopia av programmet ovan. Importera Dag-klassen (med en import-sats) till din kopia och ändra programmet på följande sätt:

    Testa att programmet fungerar. Använd __str__-metoden för att kontrollera att det är rätt max- och min-värden som skrivs ut.