DD1311 Programmeringsteknik för S1 Laborationer läsåret 2007-2008



Relevanta dokument
DD1311 Programmeringsteknik för CL1 Laborationer läsåret

Extramaterial till Matematik Y

DD1310 Programmering för OPEN1 LAB1: Laborationer i Python läsåret 2011/2012

Introduktion till Matlab

Laboration: Grunderna i MATLAB

Introduktion till Matlab

DD1310 Programmeringsteknik för Open1 och Med2 Laborationer läsåret 2014/2015

Extramaterial till Matematik Y

HI1024 Programmering, grundkurs TEN

Projektuppgift - Gymmet

Introduktion. Skriv in användarnamn och lösenord

Introduktion till programmering D0009E. Föreläsning 1: Programmets väg

Idag: Centrerad utskrift. Granskning. DD1311 Programmeringsteknik med PBL. Granskning Felhantering GUI. Föreläsning 15.

Använda Python Laboration 1 GruDat, DD1344

DATORINTRODUKTION. Laboration E ELEKTRO. UMEÅ UNIVERSITET Tillämpad fysik och elektronik Ulf Holmgren

Programmeringteknik. Planering MÅL LABB: MOMENT LAB4 HTML - EXEMPEL HTML. Webbdelen

Övningsuppgifter kapitel 8

HI1024 Programmering, grundkurs TEN

1/15/2013. DD1310/DD1314/DA3009 Programmeringsteknik. Lärandemål... Vilka läser kursen? ...fler lärandemål VARFÖR? Föreläsning 1

Skolan för Datavetenskap och kommunikation. Programmeringsteknik. Föreläsning 13

25. Hämta Adobe Reader

C++ Slumptalsfunktioner + switch-satsen

Projektuppgift - Biblioteket

Föreläsning 2 Programmeringsteknik DD1310. Programmering. Programspråk

Numeriska metoder och grundläggande programmering för T1

Alla filer som bearbetar PHP script ska avslutas med ändelsen.php, exempelvis ska en indexsida till en hemsida heta index.php

Användarhantering Windows 7 I denna laboration kommer vi att skapa nya användare och grupper och titta på hur man hantera dessa.

Landstinget i Värmland, mars 2012

Laboration 1 Introduktion till Visual Basic 6.0

Hja lp till Mina sidor

Office 365 MB. Innehåll. Inledning / Inställningar Outlook (e-post) Kalender Personer (kontakter)... 5 OneDrive molnet... 5.

Manual för Skapa gästkonton för konferens

Projektuppgift - Banken

Tentamen. Datalogi I, grundkurs med Java 10p, 2D4112, Lördagen den 30 november 2002 kl , salar E33, E34

Digitalt lärande och programmering i klassrummet. Introduktionsworkshop - Interaktiva berättelser med Twine

ANVÄNDARBESKRIVNING FÖR PERSONAL

DN1212/numpm Numeriska metoder och grundläggande programmering Laboration 1 Introduktion

Vi programmerar Java!

Chapter 3: Using Classes and Objects

Objektorienterad programmering i Java I

Dok nr OSF/AV-15:003, ver E Inloggning till Treserva via extern dator

KTH STH TENTAMEN. HI1024:TEN2 - Praktisk tentamen Tid: 8-13, den 18 februari 2012

Lathund. Skolverkets behörighetssystem för e-tjänster. Rollen rektor

Introduktion till Matlab

Tentamen i Grundläggande programmering STS, åk 1 lördag

DD1310/DD1314/DA3009 Programmeringsteknik LÄRANDEMÅL... Vilka läser kursen? ...FLER LÄRANDEMÅL. Föreläsning 1

Filbindningar. Mike McBride Översättare: Stefan Asserhäll

Kom i gång med PING PONG

Föreläsning 2 Programmeringsteknik DD1310. Programmering. Programspråk

Inledande programmering med C# (1DV402) Ditt första C#-program med Visual Studio

Inloggning till Treserva via extern dator

Introduktion till datormiljön och Python

Manual. It s learning. Målgruppen: externa utförare inom Vård och Omsorg

Översikt. Installation av EasyPHP 1. Ladda ner från Jag använder Release Installera EasyPHP.

L04.1 Marodören. Inledning. Mål. Genomförande. Uppgift 1 Hello World. Moment I

Kom i gång med PING PONG

Fakturaportal för Särskilt Tandvårdsstöd

Laboration 3 HI1024, Programmering, grundkurs, 8.0 hp

Dagens program. Programmeringsteknik och Matlab. Objektorienterad programmering. Vad är vitsen med att ha både metoder och data i objekten?

Laboration 3 HI1024, Programmering, grundkurs, 8.0 hp

Numeriska metoder och grundläggande programmering för P1 och T1

Användarmanual Utbildningsportalen Användarmanual SDH webbutbildning

Introduktion till Matlab

Föreläsning 2 Programmeringsteknik och C DD1316. Programmering. Programspråk

Manual för din hemsida

DN1212/numpp Numeriska metoder och grundläggande programmering Laboration 1 Introduktion

Alla datorprogram har en sak gemensam; alla processerar indata för att producera något slags resultat, utdata.

729G04 PYTHON 6 JODY FOO. Department of Computer and Information Science (IDA) Linköping University, Sweden

Föreläsning 2 Programmeringsteknik och C DD1316. Mikael Djurfeldt

v. 42 Python HT17 En introduktion Oscar Bergqvist

Objektorienterad programmering Föreläsning 2

Introduktion till Matlab

Förberedelseuppgift inför datorlaborationen

Att använda ELSA. Vad behövs för att använda ELSA?. Felrapportering och support

729G04 Programmering och diskret matematik Tenta kl 14:00-18:00

Java: Utvecklingsverktyg, datatyper, kontrollstrukturer

729G06 Föreläsning 1 Objektorienterad programmering

Frontpage 2002/XP (2)

Python. Python är, som Scheme, ett interpreterat språk men det finns kompilatorer för Python.

Översikt 732G11 PROGRAMMERING 1. Personal. Kursens mål. Litteratur. Kursens innehåll

Manual för Skapa gästkonton för konferens

Föreläsning 10 Datalogi 1 DA2001. Utskrift på skärmen. Syntax. print( Hej ) Hur är det? Hej. print( Hej,end= ) print( Hur är det? ) HejHur är det?

3.2 1H[W*HQHUDWLRQ6HFXULW\ Användarmanual

GRUNDKURS I C-PROGRAMMERING

Laboration 1. "kompilera"-ikonen "exekvera"-ikonen

Omsorgen Användarhandledning

Skolan för Datavetenskap och kommunikation PROGRAMMERINGSTEKNIK FÖRELÄSNING 15

Föreläsning 2 Programmeringsteknik och Matlab DD1312. Programspråk. Utskrift på skärmen

FIRSTCLASS. Innehåll:

Malmö högskola 2007/2008 Teknik och samhälle

Övning 1. Datateknik A, Java I, 5 poäng. Att ladda hem och installera Java Att skriva ditt första Javaprogram Att kompilera och exekvera ditt program

TeamViewer Installation och användning

Hur kommer jag igång?

Kort-kort om utdelade användarkonton och datormiljön på NADA

Föreläsning 2 Programmeringsteknik och Matlab DD1312. Programspråk. Utskrift på skärmen

Python. Python är, som Scheme, ett interpreterat språk men det finns kompilatorer för Python.

Kortfattad instruktion för Crystal Reports. Kom i gång med Crystal Reports. Instruktion Crystal Reports 2014

Portalinloggning SITHS HCC och Lösenordsbyte manual

Välkommen som användare av medietekniks och informatiks publika studentserver

Transkript:

DD1311 meringsteknik för S1 Laborationer läsåret 2007-2008 Fyll i ditt namn och personnummer med bläck eller motsvarande. Kursledare är Linda Kann, linda@nada.kth.se. Namn... Personnr... Laborationer Labb 1 Godkänt den... Kvitteras... Timmar... (2008 01 24) Labb 2Godkänt den... Kvitteras... Timmar... (2008 01 31) Labb 3 Godkänt den... Kvitteras... Timmar... (2008 02 07) Labb 4 Godkänt den... Kvitteras... Timmar... (2008 02 14) Labb 5 Godkänt den... Kvitteras... Timmar... (2008 02 21) Prov Prov Godkänt den... Kvitteras... (2008 02 26) P-del Spec Godkänt den... Kvitteras... (2008 03 11) Granskning Godkänt den... Kvitteras... (2008 04 29) Redovisning Godkänt den... Kvitteras... Timmar... A B C D E F (2008 04 29)

2 DD1311 S1 2007-2008 Laboration 1 Kapitel 1-2: Kurshemsidan, hederskodex, incheckning, IDLE, print-satsen, kommentarer, variabler, strängar, beräkningar, indata Inloggning Vilken dator du ska sitta vid står på den gula lappen du fick av kursledaren. De inledande fem labbarna gör ni i grupper om två och din labbkompis är den som har fått samma datornummer på sin gula lapp. Ni bör båda ha var sitt användarkonto (användarnamn och tillhörande lösenord). Välj ett av kontona och logga in. Webbläsare och kurshemsidan Med en webbläsare som t ex Internet Explorer kan du utforska Internet där bland annat kurshemsidan finns. Den webbläsaren kan startas genom att från startmenyn välja Internet Explorer. Starta webbläsaren och skriv in adressen http://www.csc.kth.se/dd1311/ och tryck på returtangenten. På hemsidan finns massor av nyttig information, och du gör klokt i att alltid ha en webbläsare igång och kurshemsidan lättillgänglig när du labbar. För att slippa skriva in den adressen varje gång du ska titta på kurshemsidan kan du spara ett bokmärke. Hederskodex På Nada används en gemensam hederskodex för alla Nadakurser. Du hittar den via kurshemsidan och är själv ansvarig att läsa igenom och följa den. Vilka är de fem reglerna i hederskodexen? Checka in på kursen På kurshemsidan finns information om hur man checkar in på kursen. Se till att båda blir incheckade. Var noggrann med alla personuppgifter! På den gula lappen står det vilken grupp ni tillhör.

DD1311 S1 2007-2008 3 Starta IDLE Välj Start s Python IDLE från startmenyn. Fönstret Python Shell som öppnas är en Python-interpretator, där man direkt kan skriva in en sats och se vad som händer. Längst upp i fönstret kan man välja bland menyerna File, Edit, Windows och Help. VäljFile New Window så öppnas ett nytt fönster där man kan skriva in, redigera, spara, och köra Python-program. För att spara det program du skrivit in väljer du File Save As. Gealltid dina program suffixet.py (t ex Gorn.py). När du är redo att provköra programmet väljer du Edit Run Script. Utmatningen från programmet kommer att synas i Python Shell-fönstret. 1. Challenge 1 från kapitel ett: Skapa ett syntaxfel genom att skriva din favoritglassmak i det interaktiva Python-shell-fönstret. Skriv sedan en print-sats som skriver ut glassmaken. 2. Challenge 1 från kapitel två: Skriv en lista med tillåtna och otillåtna variabelnamn. Skriv sedan en lista med bra och dåliga variabelnamn. Motivera varför namnen är otillåtna respektive dåliga. 3. Challenge 3 från kapitel två: Skriv ett program som beräknar dricks. Användaren får mata in resturangnotans summa och programmet ska skriva ut 15 respektive 20 procent av summan. 1. Vilka programmeringsspråk känner du till? 2. Hur skriver man en kommentar i Python? 3. Vad är IDLE? 4. Ge exempel på två olika datatyper. 5. Vad är en variabel? 6. Hur ger man en variabel ett värde? 7. Hur läser man in ett ord till programmet? 8. Hur läser man in ett tal till programmet? 9. Hur får man programmet att skriva ut text på skärmen? 10. Hur får man programmet att skriva ut ett variabelvärde på skärmen? 11. Vad är det för vits med att låta programmet läsa in värden? 12. Vad menar man när man säger att ett program är användarvänligt? Efter labben Hur tycker du att ditt eget arbete med labben fungerade? Borde du ha gjort något annorlunda? Fundera en stund, och fyll sedan i rutan på nästa sida under rubriken Tips till mig själv inför labben.

4 DD1311 S1 2007-2008 Laboration 2 Kapitel 3-4: Slumptal, if-satsen, while-slingan, programplanering, for-slingan, strängar, tupler Tips till mig själv inför labben: 1. En valfri Challenge från kapitel tre: (a) Lyckokakor: slumpa fram en av fem olika förutsägelser varje gång programmet körs. (b) Skriv ett program som simulerar hundra myntkast och talar om hur många kast som gav krona och hur många som gav klave. (c) Ändra i talgissningsprogrammet så att användaren bara får ett begränsat antal gissningar på sig. (d) Skriv ett nytt talgissningsprogram där användaren tänker på ett tal och datorn får gissa. (Svårare) 2. En valfri Challenge från kapitel fyra: (a) Skriv ett program som skriver ut en talföljd, t ex 0 5 10 15 20. Låt användaren mata in startvärde, slutvärde och uppräkningsvärde (b) Skriv ett program som läser in en text och skriver ut den baklänges. (c) Förbättra programmet Word Jumble (från boken) så att den som kört fast kan få en ledtråd. Lägg till ett poängsystem (med poängavdrag för ledtrådar). (d) Skapa ett ordgissningsprogram som låter användaren gissa ett slumpat ord. 1. Hur slumpar man ett tal i ett Pythonprogram? 2. Vad gör raden import random 3. Vad är det för skillnad på if-satsen och while-slingan?

DD1311 S1 2007-2008 5 4. Vad är en oändlig slinga? 5. Ge ett exempel på ett villkor. Vilka värden kan ett villkor anta? 6. Vad är en algoritm? 7. När använder man en for-slinga istället för en while-slinga? 8. Hur skriver man ut första bokstaven i en sträng? 9. Hur ändrar man första bokstaven i en sträng? 10. Ge exempel på en strängskivning (slice). 11. Vad är en tuppel? 12. Hur slumpar man ett ord ur en tuppel av ord?

6 DD1311 S1 2007-2008 Laboration 3 Kapitel 5-6: Listor, uppslagslistor, funktioner, parametrar, namnrymden. Tips till mig själv inför labben: 1. Challenge 1 från kapitel fem: Skriv ett program som skriver ut en lista av ord i slumpmässig ordning. met ska skriva ut alla orden, och varje ord ska bara skrivas ut en gång. 2. Challenge 2 från kapitel sex: Ändra talgissningsprogrammet från kapitel tre så att det använder funktionen asknumber() för att läsa in tal. 1. Vad är det för skillnad mellan en lista och en tuppel? 2. Beskriv tre metoder som finns för en lista? 3. Visa hur man skriver ut alla elementen i en nästlad lista. 4. Visa med ett exempel hur referenser fungerar. 5. Hur fungerar en ordlista (dictionary)? 6. Beskriv tre metoder som finns för en ordlista. 7. Hur definierar man en funktion? 8. Varför anropar man funktioner? 9. Vad innebär abstraktion? 10. Hur tar en funktion emot indata? Visa med ett exempel! 11. Hur skickar man utdata från en funktion? Visa med ett exempel! 12. Vad är det för skillnad mellan lokala och globala variabler?

DD1311 S1 2007-2008 7 Laboration 4 Kapitel 7-8: Filer, särfall(exceptions), konservering (pickling), klasser, metoder, objekt, konstruktor, attribut Tips till mig själv inför labben: 1. Challenge 4 från kapitel sju: Använd trivia-programmet i kapitlet (tipsfrågor) och gör en frågedatabas som testar användarens kunskaper om filer och särfall. 2. Challenge 2 från kapitel åtta: Skriv ett program som simulerar en tvapparat genom att skapa ett tv-objekt. Användaren ska kunna byta kanal samt höja och sänka volymen. Se till att kanalnummer och volym håller sig inom givna gränser. 1. I vilka moder kan man öppna en textfil? 2. Ge två olika förslag på hur man kan läsa in alla rader från en fil. 3. Varför vill man låta ett program skriva ut data på en fil? 4. Vilka typer av data kan man konservera (pickle)? 5. Hur återställer man konserverade data? 6. När används särfall (exceptions)? 7. Vad är relationen mellan klass och objekt? 8. Vad är en metod? 9. Hur fungerar en konstruktor? 10. Hur kommer man åt ett objekts attribut? 11. Vad kännetecknar klassattribut och statiska metoder? 12. Varför ska man använda metoder för att ändra ett objekts attribut?

8 DD1311 S1 2007-2008 Laboration 5 Kapitel 9: Objektorienterad programmering, arv, polymorfism, moduler Tips till mig själv inför labben: Skriv ett eget program som skapar objekt av en klass som du själv uppfunnit och definierat, lägger objekten i en lista och skriver ut deras data på skärmen. Data för objekten ska läsas in från fil som du skapar själv. 1. Föreslå något som kan representeras med en klass. 2. Vilka attribut ska din klass ha? 3. Och vilka metoder? 4. Rita ett objekt (med exempeldata) som är en instans av din klass. 5. Hur går det till när ett objekt skickar ett meddelande till ett annat? 6. Föreslå ett program där objekt behöver interagera. 7. Hur strukturerar man många objekt av samma typ i sitt program? 8. Rita ett exempel på en sådan struktur. 9. Hur lägger man upp en utskrift av data från alla objekten? 10. Vad används arv (inheritance) till? 11. Ge ett exempel på polymorfism. 12. Hur gör man en egen modul?