KTH 2D1343 Datalogi, 2001-2002
Särskild information för E1
Nada
Senaste nytt
Hjälp
Vanliga frågor och fel
Referenser
Registrering
Viktiga datum
Detaljschema
Aktuell vecka
Laborationer
J-uppgift
Tentamen
Projekt
Bonuspoäng
Betyg
Allmänna kurssidan
Förkunskaper
Kurslitteratur
Hederskodex
Lärare
Synpunkter på kursen
Datorsalar
(info till handledare)

Senaste nytt


Hjälp och handledning

Hjälp finns att få (i prioritetsordning):
  1. Från "Vanliga frågor och fel".
  2. Från länkar i detaljschemat.
  3. Från kurslitteraturen. Tips hur du hittar i en bok:
  4. Via referenserna på webben.
  5. Genom diskussion med labbkamraten.
  6. Under laborationerna (då redovisningar inte är prioriterade).
  7. Via datorbrev till en lärare.
  8. Under läsveckor av allmän handledare i Nadas datorsalar (Osquars Backe 2, plan 4) vardagar klockan 11-13, 17-20 (knacka och fråga efter allmänhandledare).
  9. Under redovisningstillfällena.

För datorrelaterade fel (inloggningsproblem, epost, trasiga datorer etc), se "Datorsalar".


Referenser


Viktiga datum

2001-10-29 (må v.44) Kursstart klockan 12 i D1.
2001-12-12 (on v.50) Sista redovisningsdagen för bonuspoäng på laboration 2, 3 och 4.
2002-01-25 (fr v.4) Sista redovisningsdagen för bonuspoäng på laboration 5.
2002-02-08 (fr v.6) Sista redovisningsdagen för bonuspoäng på laboration 6.
2002-02-27 (on v.9) Sista redovisningsdagen för bonuspoäng på laboration 7.
2002-03-06 (on v.10) Ordinarie tentamen klockan 08-13 i E31-36, 51-53.
Sista redovisningsdagen för bonuspoäng på J-uppgiften.
2002-04-06 (lö v.14) Omtentamen klockan 14-19 i V01, 11.
Midsommar 2002 J-uppgiften bör vara redovisad för nivå 1.
Midsommar 2003 J-uppgiften kan ej kompletteras för högre nivå.
Projektet ska vara redovisat.

Preliminärt detaljschema

Första delen av kursen ligger i ettan och är på 6p (varav 4p labb). Den avslutas med en tentamen på onsdag 2002-03-06 klockan 08-13 i E31-36, 51-53. Andra delen av kursen ligger i tvåan och utgörs av programmeringsprojekt (2p) i sexpersonsgrupper. Den har bara två schemalagda lektioner i början av hösten - sedan arbetar projekten självständigt och redovisar resultatet när det blir färdigt någon gång under året. Den första delen av kursen innehåller teorin för algoritmer och datastrukturer och dessutom programmering i Java. I andra årskursens projekt får man tillämpa det man gått igenom i ettan.

Detaljschemat beskriver vad som gås igenom på föreläsningar, övningar och datorövningar. Här finns också läshänvisningar till boken samt länkar till föreläsningsanteckningar och Javaexempel som tas upp på föreläsningar, övningar och laborationer.

Detaljschemat är preliminärt och moment kan stuvas om. Målsättningen är dock att behålla momentens inbördes ordning.

F = Föreläsning.
Ö = Salsövning.
L = Datorlaboration.
S = Söndagsproblemet.
FX = Extraföreläsning.
FR = Repetitionsföreläsning för den som missade tentan.
Vecka Aktivitet
44
  • F1: Introduktion till Java. Deklarationer, satser, funktionsanrop, if. (Avsnitt 1.0-1.3, 1.5-1.5.3 och 1.6.0, Ex 1.1, 1.17, 1.20).
  • F2: Slingor och operatorer. Slingor med while och for. Operatorerna ++, &&, ||, %. (Avsnitt 1.4 och 1.5.4-1.5.7, Ex 1.5, 1.11, 1.18).
  • S1: Söndagsproblemet Ex 1.19 med lösning.
45
  • F3: Textobjekt av typen String. Objekttyper, konstruera och jämföra textobjekt, metoderna length(), charAt(), substring(), indexOf(). (Avsnitt 2.0-2.3, Ex 2.1, 2.5, 2.8).
  • Ö1: Övning 1 med filer från respektive grupp.
  • F4: Vektorer. Vektorer och matriser. Linjär sökning. Fönster och knappar. (Avsnitt 2.4, D.1-D.2.3, Ex 5.6.1, D.1).
  • L1: Spel.
  • S2: Söndagsproblemet Ex 2.9 med lösning.
46
47
48
49
50
3
4
5
6
7
8
9
10
  • Tenta på teori och algoritmkonstruktion (inte programmering). Tentan är på onsdag 2002-03-06 klockan 08-13 i E31-36, 51-53.
36
37


Registrering

För att vi ska kunna rapportera in resultat måste du registrera dig till kursen. Detta görs normalt sett på första laborationen genom att du fyller i ett registreringsformulär. För att du sedan ska få ut dina poäng krävs dessutom att ditt kansli har anmält dig till kursen. Som en obligatorisk kurs ska detta ske med automatik.

Laborationer

Kursens första moment består av sju laborationer som görs i tvåpersonsgrupper och en individuell programmeringsuppgift (J-uppgift). Om du inte fullgör alla labbarna inom ett år från kursens slut har kursledaren rätt att kräva att du gör samtliga labbar i den nya kursomgången.

Som ett komplement till de "inbyggda" finesserna i Java så finns eventuellt ytterligare Javafiler för laborationerna. Utnyttja gärna dessa, men tänk på hederskodexen.


J-uppgift

I kursens första moment ingår en lite större, individuell programmeringsuppgift i Java; en "J-uppgift". Förslag på J-uppgifter finns. Du får gärna använda dessa som inspiration till en egen uppgift eller använda dem rakt av. Observera att en del av förslagen är alldeles för enkla om inte en extrauppgift också görs. Tänk på att inte välja samma uppgift som din labbkompis, så slipper ni båda fundera över om ni är på rätt sida gränsen för labbfusk.

Betyg sätts i allmänhet enligt följande:
1 ett halvbra program
2 ett perfekt program...
3 ...med grafiska komponenter
Alla bör få nivå 1 godkänd före sommaren. Sedan har man ett år på sej att putsa upp programmet till högre nivåer.

Redovisning sker på vanlig labbtid eller på labbtid särskilt avsatt för redovisningar. För senare redovisning tar man kontakt med kursledaren eller någon assistent.

Som ett komplement till de "inbyggda" finesserna i Java så finns ytterligare Javafiler för J-uppgifter. Utnyttja gärna dessa, men tänk på hederskodexen.


Tentamen

Kursens andra moment är en tentamen. Till skillnad från laborationer, J-uppgift och projekt så ställs inga krav på programkodskunskaper. Tentamen består av datalogifrågor, det vill säga datastrukturer och algoritmer. Du behöver inte anmäla dig till tentan.

Hjälpmedel på tentan är läroboken eller valfri algoritmbok.

Alla gamla tentor och lösningar finns och kan skrivas ut.


Projekt

Under andra årskursen delar man in sej i projektgrupper om 4-8 personer och gör ett större program. Man får då själv välja sin uppgift men här finns några projektförslag. Hur man bör arbeta i projekt kan man läsa i Miniprojekthandboken (finns på institutionen Industriella styrsystem, Osquldas väg 12) och i våra projektregler.

Bonuspoäng

Vi tillämpar ett bonussystem för att uppmuntra dej att ligga i fas med undervisningen:

Labb 2, 3 och 4 ger en bonuspoäng var om dom redovisas i tid.
Labb 5 ger en bonuspoäng om den redovisas i tid.
Labb 6 ger en bonuspoäng om den redovisas i tid.
Labb 7 ger en bonuspoäng om den redovisas i tid.
J-uppgiften ger en bonuspoäng om den godkänns i tid.

Se "Viktiga datum" för vilka tider som gäller.

Summan av dessa poäng adderas till den på tentan uppnådda poängsumman. Detta gäller ett kalenderår räknat från kursstart. Bonuspoäng kan endast fås det år som labbresultatet rapporteras.


Betyg

Slutbetyget är halva summan av tentabetyget (3,4,5), labb-betyget (1,2,3) och projektbetyget (1,2,3). Avrundning görs uppåt om det inte finns skäl för något annat.

Förkunskaper

Kursen förutsätter att man känner till begrepp som operativsystem, filer och redigeringsprogram. Den som inte gör det uppmanas att ägna extra mycket tid åt kursen i början.

Kurslitteratur

Kurslitteraturen består av:

Hederskodex

Grundregeln är att det jobb du gör i kursen (labbar, inlämningsuppgifter, tentor m m) ska du göra själv, förutom att labbarna kan göras i tvåmannagrupper. Vid redovisning av labbar ska båda i gruppen kunna redogöra i detalj även för vad labbkompisen skrivit.

Ibland, speciellt när man skriver program, kan det vara nödvändigt att fråga någon annan (en kamrat eller en handledare) om hjälp med att hitta fel. Detta är tillåtet förutsatt att du uppfyller följande villkor.

Varje annan form av samarbete och utnyttjande av andras lösningar betraktas som ett brott mot hederskodexen och kan bestraffas, t ex genom att du förlorar alla bonuspoäng eller får göra en ny uppgift.

Detta är en översatt och omarbetad version av den hederskodex som används i kursen "Introduction to computer science" vid Stanford University. Den tillämpas i många av Nadas kurser.


Lärare

Kursledare är Erik Forslin.
Datorpost: efo@nada.kth.se
Telefon: 08-7909690
Bortsett från föreläsningstillfällena är det enklaste sättet att komma i kontakt med kursledaren är att skicka datorbrev, näst enklast är att lägga en lapp i postfacket på Nada, Osquars Backe 2, 4 tr eller skicka ett vanligt brev till Nada, KTH, 100 44 Stockholm. Vill man träffa kursledaren personligen går det bra på mottagningstiden (se kursledarens hemsida för aktuella tider).

Övningsgrupperna leds av följande personer:

Grupp Lärare Datorpostadress  
  Per-Anders Staav pastaav@algonet.se Filer från genomgångar
  Jonas Sjöstrand jonass@nada.kth.se Filer från genomgångar
  Johan Lilja johan@wingenius.com Filer från genomgångar
  Vahid Mosavat vahid@nada.kth.se Filer från genomgångar
  Erik Forslin efo@nada.kth.se Filer från genomgångar

Synpunkter på kursen

Synpunkter på kursen vill vi väldigt gärna ha. Synpunkter kan lämnas direkt till någon lärare i samband med lektioner, via datorpost eller vanlig post. Vid kursens slut kommer en datoriserad enkätundersökning genomföras. Denna enkät är anonym och väldigt viktig för kursen såväl som för lärarna.

Datorsalar

På webben finns massor av information om elektros datorsalar.

Nadas datorsalar är belägna på plan 4, Lindstedtsvägen 3 (Osquars Backe 2). E-teknologer kan inte logga in på Nadas datorer, men man kan vilja gå dit för att få handledarhjälp (se "Hjälp och handledning").


^ Upp till allmänna kurssidan.


Sidansvarig: <efo@nada.kth.se>
Senast ändrad 18 april 2002
Tekniskt stöd: <webmaster@nada.kth.se>