Inleiding programmeren (C++) - Life Science & Technology

In het voorjaar van 2004 verzorgen dr. W.A. (Walter) Kosters en dr. J.M. (Jeannette) de Graaf het vak Inleiding Programmeren in C++, speciaal bestemd voor studenten Life Science & Technology. Het vak levert 3 (drie) ECTS-punten op. Samengevat: alles bij elkaar ruim tachtig uur werk. Voorkennis is het college Algoritmiek voor biologen.

Wegens een verandering in het LS&T-curriculum zal het vak niet meer gegeven worden! Diegenen die het tentamen nog niet hebben gehaald wordt dan ook dringend aangeraden contact op te nemen met de studieadviseur.

Roostering: maandagen, van 11.00 tot 15.30 uur. Data: 19 en 26 januari, 2, 9, 16 en 23 februari, 1 maart 2004. Plaats: zaal 1 van het Gorlaeus Laboratorium, Einsteinweg 55, Leiden; van 11.00 (precies) tot 13.00 uur; van 13.30 tot 15.30 uur werkcollege in de computerzalen LCP 6 en 8. Bij de werkcolleges wordt assistentie verleend door Tim Cocx, Sven Groot en Pascal Haazebroek.
Vragenuur voor tentamen: woensdag 10 maart 2004, 11.00 uur; plaats: gebouw van Wiskunde en Informatica, zaal 176 (recht boven de ingang).
Tentamen: vrijdag 12 maart 2004, 14.00 tot 17.00 uur; plaats: zaal 1, Gorlaeus.
Hertentamen: dinsdag 8 juni 2004, 14.00 tot 17.00 uur; plaats: zaal 1, Gorlaeus.
Hertentamen: maandag 23 augustus 2004, 14.00 tot 17.00 uur; plaats: zaal 1, Gorlaeus.

Cijfers afgelopen jaren: 2001/2002  |  2002/2003  |  2003/2004.

Voor meer over C++: zie het eerstejaars college Programmeermethoden uit de studie Informatica.

Inhoud

Het doel van het vak is het leren omgaan met een computersysteem (Windows met Visual C++, en -voor de liefhebbers- Linux), en meer in het bijzonder het leren programmeren in de programmeertaal C++.
Allereerst worden de beginselen van C++ uitgelegd, en kunnen kleinere programma's geschreven worden. Vervolgens worden ook grotere programma's gefabriceerd; hierbij worden uiteraard functies gebruikt. Ook komen bijvoorbeeld sorteeralgoritmen aan de orde. De nadruk ligt op het schrijven van goed gedocumenteerde en gestructureerde software.

Inhoud colleges:

  1. maandag 19 januari 2004
    Introductie apparatuur, compiler (Visual C++); eerste C++-programma's; if-statement.
    Presentatie verkrijgbaar in PowerPoint: inleiding; een.
    Werkcollege: in computerzaal onder begeleiding oefenen met Visual C++.
    Na afloop kan hopelijk iedereen zelf een klein eigen C++-programma op de computer maken en compileren, bijvoorbeeld een programma dat een paar getallen vraagt en bij elkaar optelt.
    Huiswerk: Ammeraal Hoofdstuk 1; dictaat Hoofdstuk 1, 2 en 3.1; dictaat (Hoofdstuk 4) opgaven 1 tot en met 5.
  2. maandag 26 januari 2004
    Variabelen (int, double, char, bool), operatoren en controlestructuren (while, for).
    Presentatie verkrijgbaar in PowerPoint: twee.
    Werkcollege: in computerzaal onder begeleiding werken aan de eerste programmeeropgave.
    Huiswerk: Ammeraal Hoofdstuk 2 (NIET: p. 23, 2.6); dictaat Hoofdstuk 3.2; dictaat opgaven 6 tot en met 14 (vooralsnog zonder functies).
  3. maandag 2 februari 2004
    Functies; files.
    Presentatie verkrijgbaar in PowerPoint: drie.
    Inleveren eerste programmeeropgave.
    Werkcollege: in computerzaal onder begeleiding werken aan een programma dat functies bevat voor de opgaven: 9a,b, 10, 11, 13 en 20; wat doet 19?
    Huiswerk: Ammeraal Hoofdstuk 4 (NIET: 4.3, 4.5, 4.7, 4.8) en Hoofdstuk 8 (NIET: 8.5); dictaat Hoofdstukken 3.3, 3.4 en 3.5 (nog niet: 3.5.3); dictaat opgaven 15 tot en met 28.
  4. maandag 9 februari 2004
    Arrays.
    Bespreken eerste programmeeropgave.
    Presentatie verkrijgbaar in PowerPoint: vier.
    Werkcollege: in computerzaal onder begeleiding werken aan de tweede programmeeropgave, in het bijzonder hints 1/5, en Opgave 20.
    Huiswerk: Ammeraal Hoofdstuk 5 (alleen 5.1); dictaat Hoofdstuk 3.6; dictaat opgaven 29 tot en met 35.
  5. maandag 16 februari 2004
    Let op: dit college wordt gegeven in de Havinga-zaal (langs de bibliotheek van het Gorlaeus lopen, daarna rechtsaf).
    Herhaling files en strings, vervolg arrays.
    Presentatie verkrijgbaar in PowerPoint: vijf.
    Werkcollege: in computerzaal onder begeleiding werken aan de tweede programmeeropgave, met name de optie Mastermind. Vul ook een array met random getallen, en bepaal grootste, op-een-na-grootste, en het aantal keer dat een gegeven getal voorkomt.
    Huiswerk: dictaat opgaven 36 tot en met 41.
  6. maandag 23 februari 2004
    Diverse algoritmen (randomgenerator, zoeken, sorteren, ...).
    presentatie verkrijgbaar in PowerPoint: zes.
    Werkcollege: in computerzaal onder begeleiding werken aan de tweede programmeeropgave, met name de optie Sorteren.
    Huiswerk: dictaat Hoofdstukken 3.7 en 3.8; dictaat opgaven 42 tot en met 46.
  7. maandag 2 maart 2004
    Life. Voor een public domain Windows-versie zie: Opgaven 19 (eventueel 18), 31 (eventueel 32) en 44a. Uitloop.
    Presentatie verkrijgbaar in PowerPoint: zeven.
    Inleveren tweede programmeeropgave.
    Werkcollege: in computerzaal onder begeleiding werken aan de tweede programmeeropgave.
De genoemde opgaven komen uit het dictaat, en kunnen in de week aansluitend op het college in eigen tijd gemaakt worden. Een aantal van deze sommen zijn oude tentamenopgaven. Alle uitwerkingen zijn via WWW beschikbaar.

Materiaal

Practicum

Bij het vak moeten diverse C++-programma's worden geschreven, deels buiten de werkcolleges. Aanwezigheid bij de werkcolleges is verplicht! (Eén maal afwezig met kennisgeving is toegestaan.) Er moeten twee grotere opgaven worden gemaakt, één in te leveren halverwege (2 februari, bij aanvang van het derde college, dus al twee weken na het begin van de college-serie) en één tegen het eind (1 maart, op het laatste werkcollege): Hiervoor moet veelal in de eigen tijd gewerkt worden! Deze twee grote opgaven mogen individueel of in tweetallen (maar niet in drie- of meertallen ...) gemaakt worden. Het eindcijfer van het practicum is het gemiddelde van deze twee opgaven. Het eindcijfer van het vak wordt bepaald door het schriftelijk tentamen (twee-derde) en het practicumcijfer (een-derde); het wordt afgerond op een geheel getal. Voor een voldoende eindresultaat moeten zowel schriftelijk tentamen als beide programmeeropgaven voldoende zijn! Opgaven uit vorige jaren behouden hun geldigheid.

Oude tentamens

De volgende oude tentamens en uitwerkingen zijn beschikbaar:


Vragen en/of opmerkingen kunnen worden gestuurd naar: kosters@liacs.nl.

12 maart 2004 — http://www.liacs.nl/home/kosters/lst/index.html