Hoppa till huvudinnehållet
Till KTH:s startsida

ID1018 Programmering I 7,5 hp

Information per kursomgång

Välj termin och kursomgång för att se aktuell information och mer om kursen, såsom kursplan, studieperiod och anmälningsinformation.

Termin

Kursplan som PDF

Notera: all information från kursplanen visas i tillgängligt format på denna sida.

Kursplan ID1018 (HT 2022–)
Rubriker med innehåll från kursplan ID1018 (HT 2022–) är markerade med en asterisk ( )

Innehåll och lärandemål

Kursinnehåll

Fundamentala konstruktioner:

  • Grundläggande syntax och semantik hos ett högnivåspråk
  • Variabler, datatyper, uttryck och tilldelning
  • Enkel I/O
  • Villkorliga och iterativa kontrollstrukturer
  • Funktioner och parameteröverföring
  • Strukturerad nedbrytning

Datastrukturer:

  • Representation av numeriska data
  • Omfång, precision och avrundningsfel
  • Arrayer
  • Representation av teckenbaserade data
  • Strängar och stränghantering
  • Minneshantering vid exekvering
  • Pekare och referenspekare

Algoritmisk problemlösning:

  • Problemlösningsstrategier
  • Algoritmers roll i problemlösningsprocessen
  • Implementationsstrategier för algoritmer
  • Felsökningsstrategier
  • Algoritmers begrepp och egenskaper

Objektorienterad programmering:

  • Objektorienterad design
  • Inkapsling och dold information
  • Separation av beteende och implementation
  • Klasser och underklasser
  • Arv
  • Polymorfism

Undantag:

  • Undantagshantering

Lärandemål

Efter avslutad kurs ska studenten kunna:

  • Analysera, förklara, modifiera och utöka ett enkelt program i termer av fundamentala programkonstruktioner och begrepp.
  • Beskriva hur numeriska och teckenbaserade data representeras samt diskutera användningen av primitiva datatyper och inbyggda datastrukturer.
  • Designa, implementera, testa och felsöka ett program som använder grundläggande beräkning, enkel I/O, vanliga villkors- och iterationsstrukturer och funktionsdefinitioner.
  • Diskutera vikten av algoritmer, identifiera de nödvändiga egenskaperna hos goda algoritmer och skapa algoritmer för att lösa enkla problem.
  • Utveckla kod som hanterar undantagstillstånd under exekveringen.
  • Försvara filosofin bakom objektorienterad design och begreppen inkapsling, abstraktion, arv och polymorfism.
  • Designa, implementera, testa och felsöka enkla program i ett objektorienterat programmeringsspråk.

Kurslitteratur och förberedelser

Särskild behörighet

Ingen information tillagd

Utrustning

Ingen information tillagd

Kurslitteratur

Ingen information tillagd

Examination och slutförande

När kurs inte längre ges har student möjlighet att examineras under ytterligare två läsår.

Betygsskala

A, B, C, D, E, FX, F

Examination

  • LABB - Programmeringsuppgifter, 4,5 hp, betygsskala: P, F
  • TEN1 - Skriftlig tentamen, 3,0 hp, betygsskala: A, B, C, D, E, FX, F

Examinator beslutar, baserat på rekommendation från KTH:s handläggare av stöd till studenter med funktionsnedsättning, om eventuell anpassad examination för studenter med dokumenterad, varaktig funktionsnedsättning.

Examinator får medge annan examinationsform vid omexamination av enstaka studenter.

Beskrivning av examinationens delar:

LABB – Studenten demonstrerar kreativitet och programmeringsfärdigheter genom att slutföra ett bestämt antal uppgifter.

TEN1 – Studenten demonstrerar sin förmåga att analysera och argumentera med programmeringsbegrepp.

Möjlighet till komplettering

Ingen information tillagd

Möjlighet till plussning

Ingen information tillagd

Examinator

Etiskt förhållningssätt

  • Vid grupparbete har alla i gruppen ansvar för gruppens arbete.
  • Vid examination ska varje student ärligt redovisa hjälp som erhållits och källor som använts.
  • Vid muntlig examination ska varje student kunna redogöra för hela uppgiften och hela lösningen.

Ytterligare information

Kursrum i Canvas

Registrerade studenter hittar information för genomförande av kursen i kursrummet i Canvas. En länk till kursrummet finns under fliken Studier i Personliga menyn vid kursstart.

Ges av

Huvudområde

Teknik

Utbildningsnivå

Grundnivå

Påbyggnad

Ingen information tillagd

Övergångsbestämmelser

För student registrerad på kursen för första gången höstterminen 2021 eller tidigare och som inte har ett godkänt betyg på modul LAB1 gäller: till och med höstterminen 2024 kan studenten efter samråd med examinator välja att bli examinerad på antingen LAB1 eller LABB, därefter bara på LABB. För student som har godkänt betyg på LAB1 vägs detta in i slutbetyget. 

Övrig information

I denna kurs tillämpas EECS hederskodex, se: http://www.kth.se/eecs/utbildning/hederskodex.