Algoritmen en Programma's (I00008)

Bachelor Informatica Herfst 2006

Docenten: Sjaak Smetsers, Pieter Koopman.
Studentassistenten: Albert Gerritsen en Sven Hester
Eerste bijeenkomst: 19 september, 13:30u, HG00.086. 


Informatie


Laatste nieuws


Algoritmen en programma's

Welkom op de home-pagina van de Bachelor cursus Algoritmen en Programma's (P1) voor Informatica. Hier vind je actuele informatie met betrekking tot practicum, collegestof en tentamen.

 

Deze cursus gaat over systematisch programmeren waarbij we gebruik maken van de imperatieve programmeertaal C++. Ondanks het feit dat C++ ook een object-georiënteerde programmeertaal is zal het onderwerp object-oriëntatie een ondergeschikte rol spelen binnen dit vak.

 

Wekelijks zijn er voor het college, werkcollege en practicum resp. 2, 1 en 4 uur ingeroosterd. Daarnaast dien je rekening te houden met circa 2 uur voor voorbereiding op college en practicum. In totaal zijn er 15 weken gereserveerd voor dit vak. Het totaal aantal uren bedraagt 15 * 9 = 135 uur. De resterende 33 uur (6 ECTS = 168 slu) heb je nodig als voorbereiding op het tentamen of kun je bijvoorbeeld  besteden aan het oppoetsen van uitwerkingen van practicumopgaven.


Practicum

Practicumopdrachten zullen wekelijks of tweewekelijks verschijnen. In totaal zul je dus zo'n 10 uitwerkingen van opdrachten moeten inleveren.. De opgaven zullen worden beoordeeld aan de hand van de volgende criteria. Naast deze beoordelingscriteria bestaan er richtlijnen voor het gestructureerd ontwerpen van algoritmen. De methode die wij aanbevelen om een probleem of algoritme gestructureerd aan te pakken bestaat uit vijf stappen:

  1. Probleemanalyse
  2. Algoritme en datastructuren
  3. Reflectie
  4. Implementeren
  5. Evaluatie

Deze stappen staan beschreven in een MS Word document en een PDF document. In totaal is er 4 uur aan deels begeleide practicumtijd gereserveerd.

Deze begeleiding ligt in handen van de volgende studentassistenten: Albert Gerritsen en Sven Hester.

Ook buiten de practicumtijden zijn zowel assistenten als docenten bereid om vragen te beantwoorden. Je kunt contact met ze opnemen via e-mail of gewoon even langs gaan.


Ontwikkelomgeving

We zullen in deze cursus DEV C++ gebruiken. Dit systeem kun je gratis kunt downloaden op http://www.bloodshed.net. Voor de machines op de faculteit is dit systeem geïnstalleerd op de S-schijf (\\sdisk-srv\xpsoftware). Deze schijf wordt automatisch gekoppeld als je inlogt. Je kunt zelf een shortcut naar de applicatie op de desktop zetten en er dan voor kiezen om middels de -c vlag het pad voor je eigen configuratie directory te zetten op een directory in je home directory. Als je bijvoorbeeld standaard in een directory p2 op je H-schijf (je eigen schijf waarvan de inhoud bewaard wordt) wil werken krijg je als target in de shortcut: S:\Dev-Cpp\devcpp.exe -c H:\p2. De eerste keer dat je Dev-Cpp opstart zal het programma je een aantal vragen over de configuratie stellen. Een van die vragen is of er een cache gemaakt moet worden, kies hier nee (tenzij je van te voren bedenkt waar die grote cache heen moet).

 

De redenen dat we DEV C++ gebruiken in plaats van MS visual Studio zijn dat DEV C++ een veel eenvoudiger en vriendelijker systeem is voor de soort programma's dat er gemaakt moet worden, en dat de debugger van MS Visual Studio in de huidige configuratie voor problemen blijft zorgen. Indien je toch graag de Visual Studio .NET C++ ontwikkelomgeving gebruikt kun je hem vanaf hier verkrijgen om thuis te installeren.

 

Voor lange programma’s is het handig om af te drukken op kettingformulieren (blaadjes die aan elkaar zitten). Dit papier is breed genoeg voor de langere regels uit je programma, en de blaadjes raken niet uit volgorde. Dit kan op lp5, zie de instructies van C&CZ over hoe je dit moet doen. Deze printer staat aan het eind van de hoofdstraat in het Huygensgebouw op de begane grond.

 


Opdrachten en Literatuur

De stof zal uitgelegd worden aan de hand van:

  1. Dictaat "Algoritmen en programma's" dat je hier online kunt bekijken.
  2. Boek "Big C++", Horstmann, Wiley, ISBN 0471470635.

We raden je sterk aan het boek Big C++ aan te schaffen. Het bevat veel nuttige voorbeelden en uitleg. Bovendien staan veel C++ details daar wel uitgelegd die in het dictaat niet of slechts summier uitgelegd worden.

Opdrachten en ander cursusmateriaal vind je op blackboard.

Er zijn dit jaar twee soorten opdrachten. De verplichte opdrachten moet je inleveren. Het gemiddelde cijfer van deze opdrachten bepaalt de helft van je eindcijfer indien je tentamenresultaat beter is dan een 5,0. Voor alle ingeleverde opgaven krijg je een beoordeling. Bovendien zal het werk van feedback voorzien worden. Wegens die feedback is het sterk aanbevolen om alle opgaven in te leveren. Het is de bedoeling dat je de opgaven in tweetallen maakt en samen een opgave inlevert via blackboard.

Zolang niet iedereen toegang heeft tot blackboard zullen de opgaven en sheets ook hier te vinden zijn. Het kan zijn dat de links er eerder zijn dan de opgave of de sheets. Als je daar een foutmelding over krijgt moet je het later nog eens proberen.

Als jij en je practicumpartner allebei echt niet in blackboard kunnen, mag je de opgave ook naar pieter @ cs . ru . nl mailen. Zet wel [p1] gevolgd door het opgavei in het subject en stuur allen dat wat gevraagd wordt. Mails met executables zullen nooit bij mij aankomen.

Zorg dat je zo snel mogelijk toegang tot Bb krijgt!

week

sheets

opgave

hulpbestand

werkcollege

opmerkingen

1: 19 september

sheets college1

1: Karel leert lopen

karel1.zip

werkcollege1

 

2: 26 september

sheets college 2

2: leer Karel rekenen

karel2.zip

werkcollege 2

opgave telt mee

3: 3 oktober

sheets college 3

3: vervang patroon

 

werkcollege 3

 

4: 10 oktober

sheets college 4

4: fsm

opg4fsm.zip

werkcollege 4

opgave telt mee

17 oktober

-

-

-

 

herfstvakantie

5: 24 oktober

sheets college 5

5: muziekdatabase

nummers.dbs

 

 

6: 31 oktober

TOETS

 

 

 

 

 


Tentamenregeling

Het eindcijfer van dit vak is het gemiddelde van het practicumresultaat en het tentamenresultaat indien het tentamenresultaat beter is dan 5,5. Indien het tentamenresultaat lager is, is het eindcijfer gelijk aan het tentamencijfer.


Tentamen

Dit zijn de tentamengegevens zoals ze uit de roostergenerator komen:

Vak:

Vakcode:

Examencode:

Soort toets:

Datum:

Tijd:

Lokatie:

Commentaar:

Algoritmen en programma's

I00008

I00008

tentamen

16-jan-2007

13:30-15:30

 

-

Algoritmen en programma's

I00008

I00008

hertentamen

20-feb-2007

13:30-15:30

 

-

 


 

Last updated: 13 oktober 2006 by Pieter Koopman