Göm menyn

TDIU04 Programmering i C++, standardbibliotek

Examination

Kursen har två examinationsmoment, LAB1 och DAT1.

LAB1 (2 hp) utgörs av laborationer som behandlar de delar av C++ standardbibliotek, m.m., som ingår i kursen. Redovisningen ska göras genom inskick av lösningar via skriptet /home/TDIU04/send_lab. Muntlig redovisning kan begäras om assistenten finner skäl till det. LAB1 betygssätts U eller G.

Det finns en deadline för varje laborationsuppgift. För varje deadline som hålls för laboration 2-6 och laborationen ifråga är godkänd, eller blir godkänd efter en komplettering, erhålls 0,25 poäng. Maximal bonuspoäng är 1,25 poäng och den som uppnår minst 1 bonuspoäng får tillgodoräkna sig 1 poäng vid tentamen för betyg 4 eller 5, vid de närmaste tre tentamina som ges efter att kursen avslutats (därefter är bonusen förverkad). Bonus kan inte tillgodoräknas för att bli godkänd på ett annars underkänt resultat. Eftersom det bara är 3 poäng mellan betygsgränserna kan 1 poäng betyda mycket. Kan du av någon anledning inte hålla en deadline, till exempel på grund av sjukdom eller annat giltigt förfall, ska assistenten kontaktas omgående ("sjukanmälan").

DAT1 (2 hp) är en datortentamen som innebär programmering i C++ med, framför allt, användning av C++ standardbibliotek. Tentamen omfattar normalt tre programmeringsuppgifter som ska lösas vid dator. Tentamenstiden är 5 timmar. Tentamen genomförs i princip som en vanlig papperstenta, rättning sker i efterhand. Datortentamen ges första gången i tentamensperiod Vt1 och sedan i omtentamensperioden efter Vt2 och i augusti. Datortentamen betygssätts U, 3, 4, 5. Betyget bestäms av hur många poäng man erhållit totalt. Datortentamen genomförs på IDAs Sun-system med GNU GCC (g++) för att kompilera programmen.

För slutbetyg på kursen krävs att båda examinationsmomenten LAB1 och DAT1 är godkända. Slutbetyget bestäms av betyget på DAT1.

Datortentamen

Allmäna anvisningar för IDAs datortentasystem finns här.

Du bör ha god rutin på att använda Emacs eller annan tillgänglig texteditor, kompilatorn GNU/GCC g++ samt grundläggande hantering av filer i Solarismiljön.

Du bör ha god rutin på att tolka felmeddelanden och varningar från kompilatorn och länkaren (ld, ild) samt kunna särskilja meddelanden från kompilatorn respektive länkaren.

Aktuella tentamenstillfällen och anmälningsperioder (Studentportalen).

Exempel på tidigare tentor

2014-06-12: Uppgifter — Lösningsförslag

2014-03-21: Uppgifter — Lösningsförslag

2013-08-28: Uppgifter — Lösningsförslag

Tentamen ska vara ett prov på färdigheter i problemlösning med användning av standardbibliotekskomponenter, speciellt containrar, iteratorer, algoritmer och funktionsobjekt samt associerade stödkomponenter (t.ex. pair). Du ska kunna konstruera egna funktionsobjektsklasser (struct, class) och kunna göra om en sådan klass till en klassmall. Du ska kunna överlagra och använda operatorerna << och >> för skrivning respektive läsning. Du ska kunna definiera och använda uppräkningstyper (enum). Du ska (egentligen förkunskaper) kunna använda strängar, string, och strömmar, inklusive filströmmar — ifstream, ofstream— och strängströmmar — istringstream, ostringstream.

Hjälpmedel

Det är viktigt att vara väl förtrogen med hjälpmedlen och deras innehåll, de ska enbart vara ett stöd för att kunna slå upp detaljer.

En bok om C++ får tas med till tentamen. Följande gäller:
   — kommentarer/noteringar som direkt rör text och exempel på sidan i fråga får finnas i sidmarginalen
   — rättelser till felaktigheter får finnas
   — egna sidflikar för att enkelt kunna hitta t.ex. de olika kapitlen är tillåtna
   — inga extra ark eller lappar, lösa eller fastsatta, får finnas
   — tomma sidor, in- och utsidorna av pärmarna, försättsblad, etc., får inte innehålla programkod

•  C++ Standardbibliotek: Översikt containrar, iteratorer, algoritmer, funktionsobjekt (PDF) kommer att finnas bland givna filer.

•  cplusplus.com Reference kan läsas i ett terminalfönster med Elinks text www browser. En enkel instruktion för Elinks kommer att finnas. För att prova Elinks innan tentamen, gör följande i ett terminalfönster:

   module add office/elinks
   cppreference

•  Datorsystemets man-sidor.

•  Inloggningsinstruktioner och lite praktiska tips utlånas under tentamen.

•  En svensk—* ordbok.

•  Kladdpapper (delas ut) och penna.

Inga andra hjälpmedel är tillåtna!

Tänk på!

• Lösningarna till laborationsuppgifterna i C++ ska vara program som konstruerats och kodats av laborationsgruppens medlemmar i jämbördigt samarbete och utan någon inblandning av andra. Allmäna diskussioner kring programmering och C++ kan man föra med vem som helst, konkreta diskussioner kring konstruktioner och problem i direkt samband med laborationsuppgifterna ska enbart föras inom labgruppen och med lärarna.

• Alla former av kopiering av texter, programkod, etc., betraktas som fusk och ska rapporteras till disciplinnämnden.

• Deadline är viktiga för att vara i fas med det stoff som behandlas på föreläsningarna och de laborationsförberedande aktiviteter som genomförs på lektionerna samt för att vara väl förberedd till datortentamen.


Sidansvarig: Tommy Olsson
Senast uppdaterad: 2014-06-12