HI1024 HT23 Programmering, grundkurs (50320)

Välkommen

Nyheter:

Nu finns tider att boka för att redovisa laboration 3 (HI1024 LAB1) onsdag den 21 augusti. Obs! du måste lämna in den färdiga koden i moss innan du bokar. Tar tiderna slut maila mig. Om tiderna tar slut under sommaren lägger jag upp nya vecka 33.

Var noga med att när ni är klara läsa igenom hela instruktionen och försäkra er om att ert program följer alla delar av instruktionen. Särskilt vill jag påminna om att koden för att söka efter spel ska skrivas i en funktion som sedan anropas både av den funktionen som anropas när man väljer search games och av den funktionen som anropas när man väljer remove games. Ni ska inte behöva duplicera sök-koden någon gång. Glöm inte att alla måste göra extrauppgifterna. För att få hjälp måste man som tidigare sagt ha kommit innan terminen tar slut. I mån av tid kan jag hjälpa till under vecka 33 men bara på plats.

mvh

Nicklas

Välkommen till grundkursen i programmering för Tidaa (data).

Här kommer ni att hitta all information som rör årets kursomgång för er. Kursutveckling och kursplan hittar ni på kurswebben: https://www.kth.se/social/course/HI1024/.

Börja med att läs igenom kurs-pm och om ni senare undrar över något läs alltid kurs-pm först.

Om ni inte läst CM0002 så behöver ni som självstudie läsa igenom föreläsningarna från denna. Dessa föreläsningar ingår i denna kurs och det kan komma frågor på innehållet i TENA.

Klassens discord-kanal (obs kth ansvarar ej för denna): https://discord.gg/SMHR8SqxWK Links to an external site. 

mvh

Nicklas

Nicklas Brandefelt

bfelt@kth.se

087909738

IT-support

har öppet vid studentexpeditionen på plan 5 9.30-10.30 tisdag och torsdag och kan hjälpa er med IT-problem.

Planering och föreläsningar

Föreläsningarna kommer att ske i sal. Detta är viktiga tillfällen att ställa frågor, umgås med och lära känna klasskamrater och få inspiration och motivation. Missa inte dessa.

Nedan följer planering med föreläsningar, läsanvisningar till K. N. King och programmeringsuppgifter

V.

Tillfälle

Läsanvisning / Salsanvisning

Uppgifter

35

Föreläsning 1

F1intro.pdf Ladda ner F1intro.pdf

Skumma snabbt igenom kapitel 1.
Läs kapitel 2 (särskilt 2.6).
Läs kapitel 3 men fastna inte på detaljer. Du behöver inte kunna allt. Under kursen kommer du märka vad du behöver och kan då titta tillbaka i kapitlet.

Kom ihåg att titta om du kan svara på några nya instuderingsfrågor efter varje föreläsning.

F1uppgifter.pdf Ladda ner F1uppgifter.pdf
Övning 1 Efternamn börjar med: A-J T63, L-Ö T54 Att redovisa: F1_5

Föreläsning 2

F2uttryckIf.pdf Ladda ner F2uttryckIf.pdf

Läs igenom kapitel 4 och kapitel 5 (hoppa över 83-90). Ha datorn redo och test-programmera medans du läser så att du ser att du förstått.

F2uppgifter.pdf Ladda ner F2uppgifter.pdf
Övning 2 Efternamn börjar med: A-J T63, K-Ö T67 Att redovisa: F2_5, F2_7

Föreläsning 3

F3looparTyper.pdf Ladda ner F3looparTyper.pdf

OBS! Denna ges två gånger. En gång på morgonen endast för dem som ska vara med på kårens aktivitet på eftermiddagen och en gång på eftermiddagen för alla andra.

Läs 6.1-6.3 (testa på datorn samtidigt som du läser)
Skumma igenom 7.1 och 7.2. Läs om oktala och hexadecimala tal sid 128 ordentligt om du inte kan detta.
Läs 7.3 sid 134-135 och 7.3 andra halvan av sid 139

F3uppgifter.pdf Ladda ner F3uppgifter.pdf
36 Övning 3 Efternamn börjar med: A-J T55, K-Ö T54 Att redovisa: F3_7, F3_8

Föreläsning 4: Problemlösning - viktigt att ha med dator

F4Problemlösning.pdf Ladda ner F4Problemlösning.pdf

OBS! Vi börjar 13.15 enligt schemat!
F4uppgifter.pdf Ladda ner F4uppgifter.pdf

Övning 4

Att redovisa: F4_1, F4_3

Föreläsning 5:Problemlösning, viktigt att ha med dator.

F5Blandat.pdf Ladda ner F5Blandat.pdf

Läs kap 5: 86-89, 6.4 och 6.5

F5uppgifter.pdf Ladda ner F5uppgifter.pdf

Laboration 1 - redovisning: torsdag 7 september.

Boka tid i canvas senast kl 15.00 6 september.

Sitt redo att redovisa i redovisningsrummet senast 20 min innan din tid!

 

Laboration 1 - redovisning: fredag 8 september.

Boka tid i canvas senast kl 15.00 7 september.

Sitt redo att redovisa i redovisningsrummet senast 20 min innan din tid!

 

v37 Laboration 1 - redovisning: tisdag 12 september.

Boka tid i canvas senast kl 15.00 11 september.

Sitt redo att redovisa i redovisningsrummet senast 20 min innan din tid!

 

Övning 5

Efternamn börjar med: A-J T55, K-Ö T54

Att redovisa: F5_1, F5_2

Föreläsning 6

F6ArraysSlump.pdf Ladda ner F6ArraysSlump.pdf

Läs 7.6 och Boolean Values sid 83-86 i 5.2
Läs 8.1, 8.2, 8.3

F6uppgifter.pdf Ladda ner F6uppgifter.pdf

Övning 6

Efternamn börjar med: A-J T53, K-Ö T54

Att redovisa: F6_5

Föreläsning 7

F7Funktioner.pdf Ladda ner F7Funktioner.pdf

Läs 9.1-9.5
Läs första delen av 9.6 (sid 204-205)
Läs 10.1, 10.2 (219-223)
Läs 10.3, 10.4

F7uppgifter.pdf Ladda ner F7uppgifter.pdf

Övning 7

Efternamn börjar med: A-J T55, K-Ö T63

Att redovisa: F7_3

Föreläsning 8 -Problemlösning med uppdelning m.h.a. funktioner, ta med dator.

F8ProblemuppdelningFunktioner.pdf Ladda ner F8ProblemuppdelningFunktioner.pdf

diceFrequency.c Ladda ner diceFrequency.c

 

Arbeta med laboration 2

38

Övning 8

Efternamn börjar med: A-J T55, K-Ö T54

Att redovisa: F6_6

Föreläsning 9

F9Rep.pdf Ladda ner F9Rep.pdf

 

F9uppgifter.pdf Ladda ner F9uppgifter.pdf

Övning 9

Test av tentasystemet 20/9. Ta med en mus med sladd.


Efternamn börjar med:
A-E T63 8.15-8.40
F-K T63, 8.40-9.05
L-R T67 8.15-8.40
S-Ö T67 8.40-9.05

OBS det är möjligt att alla inte får plats på sitt pass. Då får man vänta till nästa. Vänligen ha tålamod. Jag ska också försöka hitta en extra-sal där vi kan ha övning under tiden.

Viktigt att närvara. Missar du detta tillfälle måste du gå förbi IT och be att få pröva tentasystemet.

Att redovisa: F9_2

Föreläsning 10

F10Pekare.pdf Ladda ner F10Pekare.pdf

Läs 11.1-11.4 (11.5, 12 frivilligt om du är redo)

F10uppgifter.pdf Ladda ner F10uppgifter.pdf.

Laboration 2 - redovisning: fredag 22 september.

Boka tid i canvas senast kl 15.00 21 september.

Sitt redo att redovisa i redovisningsrummet senast 20 min innan din tid!

 

39

Övning 10

Efternamn börjar med: A-J T67, K-Ö T54

Att redovisa: F9_4

Föreläsning11

F11Strängar.pdf Ladda ner F11Strängar.pdf

Läs igenom 13.1-13.5

Om du läst 12 rekommenderas 13.6 (frivilligt)

F11uppgifter.pdf Ladda ner F11uppgifter.pdf

Övning 11

Alla syns i T63!

Att redovisa: F11_2

Föreläsning 12

F12Struct.pdf Ladda ner F12Struct.pdf

Läs 16.1-16.3 (exemplet på slutet är frivilligt)

F12uppgifter.pdf Ladda ner F12uppgifter.pdf

40

Laboration 2 - redovisning: tisdag 3 oktober (och mån 2 okt).

Boka tid i canvas senast kl 15.00 2 oktober.

Sitt redo att redovisa i redovisningsrummet senast 20 min innan din tid!

 

Övning 12

Alla syns i T63!

Att redovisa: F12_1

Föreläsning 13

F13InputOutput.pdf Ladda ner F13InputOutput.pdf

Om du vill kan du skumma igenom kapitel 22. Det finns mycket användbart men också mycket som inte ingår och texten är något svårtillgänglig så det är ok att hoppa läsningen och fokusera på föreläsningsanteckningarna.

F13uppgifter.pdf Ladda ner F13uppgifter.pdf

41

Laboration 2 - redovisning: måndag, tisdag 9, 10 oktober. OBS en redovisning förlagd på 2 dagar. Ingen garanti att man får plats på viss dag.

Boka tid i canvas senast kl 15.00 6 oktober.

Sitt redo att redovisa i redovisningsrummet senast 20 min innan din tid!

 

Övning 13

 

Att redovisa: F12_6

Föreläsning 14

F14StoraProgramTentor.pdf Ladda ner F14StoraProgramTentor.pdf

Även denna gång räcker det med föreläsningen för denna kurs men till projektkursen i p4 kommer kap 15 vara användbart så läs gärna detta om du har tid.

F14uppgifter.pdf Ladda ner F14uppgifter.pdf

Övning 14

Att redovisa: F14_1a

Föreläsning 15

sankaSkepp.c Ladda ner sankaSkepp.c

 

 

Övning 15

 

 

42

Övning 16

 

 

Laboration 3 - redovisning: torsdag, fredag 19,20 oktober. OBS en redovisning förlagd på 2 dagar. Ingen garanti att man får plats på viss dag.

Boka tid i canvas senast kl 15.00 18 oktober. OBS du måste lämna in i moss innan du bokar!

Sitt redo att redovisa i redovisningsrummet senast 20 min innan din tid!

 

43

TENA, TEN2 - se schema

 

 

45

Laboration 3 - redovisning: torsdag, fredag 9, 10 november. OBS en redovisning förlagd på 2 dagar. Ingen garanti att man får plats på viss dag.

OBS sista chansen att använda bonus från lab1 och lab2.
Obs att detta är ett tillfälle uppdelat på två dagar. Ni måste skicka in lösning via https://maceo.sth.kth.se senast 8 november kl 15.00. Ni får inte boka tid innan ni skickat in er lösning. Gör ni detta kommer jag ta bort er bokning.

Boka tid i canvas senast kl 15.00 8 november.

Sitt redo att redovisa i redovisningsrummet senast 20 min innan din tid!

 

 

Övningar

På övningarna får man hjälp av lärare och assistenter i sal med programmeringsuppgifterna som står i planeringen. Till de flesta övningstillfällen finns uppgifter att redovisa (se ovan). Första timmen kan man få hjälp med även dessa. Efter första timmen noterar assistenten vilka som gjort dagens uppgifter (obs man måste ha gjort alla, ofta två). Under andra timmen kommer assistenten lotta vilka som för assistenten får redovisa sina uppgifter. Däremellan kommer man fortfarande kunna få hjälp men man kan inte längre få räkna dagens uppgifter. Får man godkänt vid minst 8 tillfällen så får man bonus på ordinarie TEN2 (den praktiska tentan). Det innebär att man får första uppgiften tillgodoräknad. På övningspassen har vi två bokade klassrum. Ni ska vid varje tillfälle gå till klassrum efter första bokstaven i efternamnet enligt info i planeringen ovan. Bokstäverna kan komma att ändras efter hur den faktiska fördelningen blir så titta här på canvas innan ni går.

Observera att man måste vara klar med uppgifterna och anmäla detta till övningsassistenten  senast när andra timmen börjar. Efter detta går det inte att få godkänt på dagens uppgifter.

På en övning kommer vi att testa tentamenssystemet. Då vill jag att ni öppnar upp Visual studio code och skriver ett hello world program sparar det direkt under H med namn uppg1.c. Det är där ni måste spara filer på tentamen. Kompilera nu och kör programmet.

Examination

LAB1

Här kommer jag lägga upp årets laborationer när ni ska börja jobba med dessa. Dessa bokas i canvas (välj kursöversikt i vänstra menyn) och redovisas muntligt på plats enligt schemat. Senast 20 minuter innan sin tid ska man sitta redo att redovisa i redovisningssalen med programmet redo att köra. Laboration1.pdf Ladda ner Laboration1.pdf

Laboration2.pdf Ladda ner Laboration2.pdf

Laboration3.pdf Ladda ner Laboration3.pdf

Obs laboration 3 (källkodsfilen, dvs koden) ska när den är klar och innan ni bokar tid lämnas in till plagiatverktyget moss (gäller ej den svårare labben) senast 15.00 dagen innan redovisningarna. När vi har funnit plagiat har både den som plagierat och den som blivit plagierad blivit avstängda så snälla gör inte detta. Den här laborationen är mycket viktig för er utveckling som programmerare.

Nytt för i år är att det kommer finnas alternativa svårare laborationer som man kan göra om man redan kan programmera och har gjort minst ett större projekt. Dessa kommer att kräva att ni lägger ganska mycket tid på dessa så innan ni sätter i gång kan ni kontrollera att ni ligger rätt i nivå genom att göra programmeringsuppgifterna tillhörande föreläsning 9 och föreläsning 14.

TENA

Denna tentamen ges digitalt på distans. Gör instuderingsfrågorna nedan för att förbereda dig. Använd boken, föreläsningarna till denna kurs och föreläsningarna till introkursen CM0002.

Instuderingsfrågor.pdf Ladda ner Instuderingsfrågor.pdf

TEN2

Denna tentamen kommer att skrivas på skolans datorer.  På ett övningstillfället kommer vi att testa tentamenssystemet. Det är mycket viktigt att du medverkar då. Skulle du vara sjuk måste du senare gå förbi IT vid helpdesk och be att få pröva tentamenssystemet.

Observera att man endast får ha med sig kursbok utan anteckningar eller understrykningar till tentan. Man får inte ha med sig anteckningar. Man får ha med sig en mus med sladd. Att den fungerar är ert ansvar. Det kan vara bra att testa innan tentan.

Tentor (gamla och årets) med lösningar hittar du på https://www.kth.se/social/course/HI1024/ (välj TEN2 i menyn till vänster).

Om man blivit godkänd på bonusuppgifterna får man tillgodoräkna sig första uppgiften på första ordinarie tentamen. Obs inte på omtentan.

Offentlig domän Kursens innehåll erbjuds under en Offentlig domän Links to an external site. licens. Kursens innehåll lyder under denna licens om inget annat uppges.