DD1321 Tillämpad programmering och datalogi 9,0 hp

Applied Programming and Computer Science

En grundläggande kurs i datalogi och programmeringspraktik.

  • Utbildningsnivå

    Grundnivå
  • Huvudområde

    Teknik
  • Betygsskala

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

Kurstillfällen/kursomgångar

HT19 tilpro19 för programstuderande

HT18 tilpro18 för programstuderande

Lärandemål

Efter genomförd kurs ska du kunna följande:

  • skriva strukturerade program på några sidor i språken Python och C,
  • systematiskt felsöka program,
  • skriva automatiserade testprogram,
  • använda abstraktion som ett verktyg för att förenkla programmeringen,
  • använda dig av prototypprogrammering i Python,
  • känna till internationella programmeringsstandarder,
  • skriva fristående komponenter,
  • välja lämplig algoritm till ett givet problem,
  • jämföra algoritmer med avseende på tids- och minnesåtgång,
  • beskriva olika algoritmer för sökning och sortering och deras egenskaper,
  • formulera och implementera rekursiva algoritmer,
  • modellera verkliga problem som sökproblem och implementera algoritmer för breddenförstsökning, djupetförstsökning och bästaförstsökning,
  • beskriva grundläggande komprimeringsalgoritmer och i vilka typer av komprimering de används,
  • implementera och använda stackar och köer,
  • implementera insättnings-, genomgångs- och sökoperationer i binära sökträd och allmänna träd samt använda dessa,
  • implementera och använda hashtabeller och hashfunktioner,
  • använda prioritetsköer,
  • identifiera problem där datastrukturerna ovan är användbara och konstruera enkla algoritmer med dessa,

för att du ska:

  • bli bra på att lösa problem med programmering,
  • kunna använda datalogiska metoder i tillämpningsprojekt,
  • kunna testa datorsystem,
  • ha tillräckliga förkunskaper för att kunna läsa internationella/nationella fortsättningskurser i datalogi.

Kursens huvudsakliga innehåll

Programmering i Python. Programkvalitet. Provning och felsökning. Särfall. Systemanrop. Biblioteksrutiner.
Abstrakta datatyper, stack, kö, träd. Sökning, sortering, rekursion. Hashning, sökträd, problemträd.
C-program, typer, kompilering och make-filer.

Behörighet

För fristående kursstuderande: grundläggande högskolebehörighet samt 7,5 hp i matematik och 6 hp datalogi eller programmeringsteknik.

Rekommenderade förkunskaper

SF1511/DN1212 Numeriska metoder och grundläggande programmering.

Litteratur

Ingen obligatorisk kurslitteratur.

Examination

  • LABD - Programmeringsuppgifter, 3,0, betygsskala: A, B, C, D, E, FX, F
  • LABP - Programmeringsuppgifter, 3,0, betygsskala: P, F
  • TEN1 - Tentamen, 3,0, betygsskala: A, B, C, D, E, FX, F

I denna kurs tillämpas skolans hederskodex, se: http://www.kth.se/csc/student/hederskodex.

Om särskilda skäl finns kan annan examinationsform användas.

Ges av

EECS/Datavetenskap

Kontaktperson

Alexander Baltatzis, tel: 790 6209, e-post: alba@kth.se

Examinator

Alexander Baltatzis <alba@kth.se>

Övrig information

Kursen samläses delvis med DD1320 Tillämpad datalogi.

Endast en av följande kurser får räknas med i examen: DD1320, DD1321, DD1325, DD1327, DD1338, DD1339, DD1340, DD1341, DD1343, DD1344, DD1345, DD2325, EL2310, HI1201, ID1020.

Påbyggnad

Fortsättningskurser är bland annat DD2350 Algoritmer, datastrukturer och komplexitet, DD1418 Språkteknologi, DD1334 Databasteknik, DD1377 Maskinnära programmering och datorarkitektur, DD2431 Maskininlärning och DH2323 Datorgrafik med interaktion. Dessutom DD1380/DD2310 Javaprogrammering för Pythonprogrammerare följd av DD1385 Programutvecklingsteknik eller DD1389 Internetprogrammering.

Versionsinformation

Kursplan gäller från och med VT2019.
Examinationsinformation gäller från och med VT2019.