Opgaven Registers Concurrency, 29 nov 2018, Werkgroep.
|
|
- Arthur Abbink
- 4 jaren geleden
- Aantal bezoeken:
Transcriptie
1 Opgaven Registers Concurrency, 29 nov 2018, Werkgroep. Gebruik deze opgaven om de stof te oefenen op het werkcollege. Cijfer: Op een toets krijg je meestal zes tot acht opgaven. 1. Safe Integer: Van een Safe bit kun je een Regular bit maken met de methode van silent writes. (a) Wanneer zal een Write operatie als silent uitgevoerd worden? (b) Is de methode van silent writes ook toe te passen om van een Safe Integer een regular Integer te maken? Oplossing: (a) Een Write operatie zal alleen daadwerkelijk schrijven als de waarde verschilt van de vorige; dus silent zijn als de wrtite-waarde gelijk is aan de vorige. (b) Voor integers werkt dit niet. Voor bits alleen omdat er maar twee waarden zijn, zodat tijdens een (actieve) write alle waarden uit het domein zijn toegestaan. Als je een safe int met waarde 0, overschrijft met een 1, kan een overlappende read waarde 2 opleveren. Beoordeling/Toelichting: Max 2, voor elke deelvraag 1. Codes: C = Een andere Constructie van regular integer werd niet gevraagd. M = Onvoldoede of onjuiste Motivatie. 2. Safe en Regular Bit: Bij het implementeren van registers kennen we een onderscheid tussen een safe register, een regular register en een atomic register. (a) Leg uit, waarom regular een sterkere eigenschap is dan safe. (b) Leg uit, waarom regular een zwakkere eigenschap is dan atomic. (c) Laat zien, hoe je met een safe bit, een regular bit kunt implementeren. Oplossing: (a) Bij safe is er niets gespecificeerd over de uitkomst van een read die met een write overlapt. Bij regular wel, dan heb je de garantie dat de opgeleverde waarde die van de laatste ervoor, of een overlappende write is. (b) Als het atomair is, lijkt het of elke operatie apart gebeurt op een moment binnen de werkelijke uitvoering. Voor een read betekent dat sowieso, dat de opgeleverde waarde er eentje is van een overlappende of de voorlaatste write. Maar bovendien kan er bij atomic geen inversie zijn: dat achtereenvolgende reads eerst een nieuwe, dan een oudere waarde opleveren. Bij regular kan dat wel, omdat regular wel iets zegt over de uitkomst van elke individuele read, maar niet over de relatie tussen de opgeleverde waarden. (c) Een regular bit mag de oude en nieuwe waarde opleveren als een read met een write overlapt. Een safe bit kan bij overlap sowieso alle waarden opleveren. Nu kent een bit maar twee waarden, 0 en 1, en als er dus sprake is van een werkelijke verandering, zijn oud en nieuw samen dus ook alles. Constructie, de Silent Write: gebruik een SAFE bit, maar de Writer houdt bij wat de laatste write waarde was. In een Write(x) wordt gekeken of x al in het register zit, en alleen als dat niet zo is, wordt een write werkelijk gedaan. De Read doet gewoon een read en levert de waarde op. Beoordeling/Toelichting: Een punt per deelvraag. R = Bij b niets over Regular. W = Willekeurige uitkomst alleen bij overlap.
2 3. Register uit bit: Om een m-waardig register te implementeren uit bits gebruiken we een unaire representatie. De Write(x) set bit r[x], en reset de lagere bits. De Read bekijkt bits van laag naar hoog, en returnt de eerste x waarvoor r[x] true is. Deze constructie is behandeld op college. (a) Een karakteristieke eigenschap van registers is: dat een Write alle voorgaande toestanden van het register uitwist. In deze register-implementatie zijn oude toestanden echter nog zichtbaar als 1-en in de array. Heeft deze implementatie dan wel de karakteristieke register-eigenschap? (b) Een programmeur vindt het mooier om, in een Write(x), ook de hogere bits te resetten (zodat na de operatie, precies één bit true is). Laat zien, dat dit tot een foute uitkomst bij Read leidt. Oplossing: (a) Je moet hier een onderscheid maken tussen de interne representatie van de toestand, en de extern aangeboden toegang. De oude toestanden die als 1 zichtbaar zijn, kun je alleen zien door inspectie van de interne toestand van het object. Als een Write-operatie eenmaal is afgerond, is geen van de daarvoor geschreven waarden nog te zien met een Read-operatie. (b) Als je deze hogere bits gaat resetten, kun je op zeker moment een bit resetten ZON- DER dat er een hogere op 1 staat. Dit kan ertoe leiden dat een Read volledig uit de rij loopt. Beoordeling/Toelichting:
3 4. Atomaire en Regular Registers: Deze vraag gaat over Single Reader, Single Writer Registers. (a) Geef een voorbeeld van gedrag dat wel Regular is, maar niet Atomic. (b) Hoe kun je met een Regular register een Atomic register maken? Oplossing: (a) Bij Regular registers is een inversie acceptabel. Register heeft waarde 8 en er komt een write(5). Tijdens de write doet de reader twee reads, waarvan de eerste de 5 oplevert en de tweede de 8. (b) Gebruik sequence numbers. Writer houdt sn bij en doet Write(x) als write((x,++sn)). De Reader onthoudt de hoogst gekregen combinatie. Na een read pakt hij het hoogste sn, onthoudt en returnt die waarde. Beoordeling/Toelichting: Totaal 3, nl 1 voor (a) en 2 voor (b). Bedoeling van de opgave was, dat je kennis uit het college/boek met enige nauwkeurigheid zou weergeven. Voor sommigen was het al lastig, welke kennis moest worden opgeschreven. Het ging niet om het regular maken van safe bits, het multiread maken van singleread, het multivalued maken van bits! A = Wat je beschrijft is wel Atomair. H = Helpen door Readers was alleen bij Multireader maken. I = Je beschrijving van het gedrag is Incompleet. L = Locking mag absoluut niet want om dat te maken heb je eerst sterke registers nodig. M = Duplicatie gebruik je voor Multireader. N = Niet alleen opslaan, ook serienummers erbij! R = Wat je beschrijft is niet Regular. S = Wat je opschrijft is niet Singlereader. U = Unair gebruik je om multivalued registers te maken. W = Je oplossing is niet Wachtvrij.
4 5. Register Implementaties: Voor het implementeren van wacht-vrije registers bestaan o.a. deze technieken: (A) Copying, (B) Silent Write, (C) Sequence Numbers, (D) Unary Representation. (a) Welke hiervan gebruik je om (i) van een Safe Bit een Regular Bit te maken; (ii) van een Regular Register een Atomic Register te maken; (iii) van een Regular Bit een Regular m-valued Register te maken? (b) Leg uit hoe de Silent Write werkt. (c) Kun je deze technieken combineren om met registers een TaS-instructie te implementeren? Oplossing: (a) i = B, ii = C, iii = D. (b) De Silent Write wordt gebruikt bij een write op bits. Als de te schrijven waarde gelijk is aan de vorige waarde, wordt de write niet uitgevoerd (is Silent). Hierdoor kan een read op de bit alleen overlappen met een write die de waarde ook echt verandert, en in dat geval is zowel een 0 als een 1 goed als antwoord. (c) Dat zal niet gaan, want het is onmogelijk om met registers wachtvrij een TaS te implementeren. Die heeft namelijk Consensusgetal 2. Beoordeling/Toelichting: Max 3, een per deelvraag. Bij (a) is 2 goede antwoorden 1/2, 1 goed is 0pt. Codes: C = Beredeneer het met Consensusgetallen! M = Geen Motivering of onzinnig verhaal. L = Silent Write zal niet het shared register uitlezen, maar checkt tegen een locale kopie van de laatstgeschreven waarde. S = Silent Write werkt alleen voor iets dat een Single Writer heeft. Bij meerdere writers werkt het niet meer, daarom kun je er geen TaS mee implementeren.
5 6. Multivalued register: Je kunt een m-waardig regular register maken uit een array van m regular bits. De Writer schrijft waarde x door bit x op 1 te zetten en de lagere bits op 0, de reader zoekt vanaf positie 0 naar de eerste 1: Write(x): Read: r[x].write(1) for(i=0; i<m; i++) for (i=x-1; i>=0; i--) if (r[i].read == 1) r[i].write(0) return i (a) Laat zien dat de Reader kan falen wanneer de Writer ook de hogere bits op 0 zet (met een loopje for (i=x+1; i<m; i++) r[i].write(0)). (b) Is het gebouwde register ook atomic? Leg uit! Oplossing: (a) Stel dat de Writer eerst Write(4) doet en dan Write(2). Na de Write(4) zijn alle bits voor positie 4 op 0, neem aan dat de Reader begint en de 0len leest tot positie 3. De Writer voert zijn complete Write(2) uit, daarna staan alle bits voorbij positie 2 op 0. De Reader gaat verder en leest alleen maar 0len. (b) Het is niet atomic, een inversie is mogelijk, omdat de gebruikte bits zelf alleen maar regular zijn. Scenario hiervoor: stel de waarde is 2 maar de Writer doet een Write(3). De Writer begint met r[3] op 1 te zetten, en gaat dan r[2] op 0 zetten met r[2].write(0). Tijdens deze write kan de Reader een volledige Read afwerken, waarbij de read op r[2], die met de r[2].write(0) overlapt, de nieuwe waarde al geeft zodat de Read resultaat 3 geeft. Daarna kan de Reader weer een volledige Read afwerken, waarbij de r[2].read, die weer met de r[2].write(0) overlapt, de oude waarde nog teruggeeft zodat deze Read 2 oplevert. (We vermoeden dat de constructie wel een atomair register zou opleveren als de gebruikte bits atomair zijn. Als dat klopt, kun je een scenario alleen maar geven door niet-atomair gedrag van bits erin te bouwen.) Beoordeling/Toelichting: Voor a en b elk 2pt. Beoordelingscodes: A = Motiveert een nee bij (b) met een Atomair scenario; 0pt. Bijvoorbeeld: een inversie bij twee overlappende reads, dit kan niet want als twee Reads overlappen kan nooit sprake zijn van inversie. B = Beredeneert bij (b) dat het atomair is, maar vanuit Atomaire bits. Slim, maar de gegeven bits zijn slechts regular; 1pt. D = Noemt alleen Definitie van atomic maar bewijst er niets over, 0pt. L = Beweert dat een Latere writewaarde kan worden geretourneerd. Kan niet, zou ook niet regular zijn; 0pt. M = Beredeneert bij (b) incorrectheid met een MultiWriter scenario, terwijl deze constructie alleen bedoeld is voor SingleWriter; 0pt. R = Beredeneert Regular ipv atomair, 0pt. S = Zegt bij (b) nee en noemt inversie, maar zonder Scenario te geven; 1pt. T = Beweert bij (b) dat het niet atomair is omdat Timestamps nodig zijn; 1pt. W = Voert bij (a) een scenario op waarin het fout gaat met twee Writers; zie M, 1pt.
6 7. Multivalued register: Je kunt een m-waardig regular register maken uit een array van m regular bits. De Writer schrijft waarde x door bit x op 1 te zetten en de lagere bits op 0, de reader zoekt vanaf positie 0 naar de eerste 1: Write(x): Read: r[x].write(1) for(i=0; i<m; i++) for (i=x-1; i>=0; i--) if (r[i].read == 1) return i; r[i].write(0) // A (a) Laat zien dat de Reader kan falen wanneer de Writer ook de hogere bits op 0 zet (met een loopje for (i=x+1; i<m; i++) r[i].write(0)). (b) Is het gebouwde register ook atomic? Leg uit! (c) Bobs compiler weigert de Read code wegens executiepaden zonder return. Daarom wil Bob als default op plek A een return... zetten; met welke waarde achter de return is de methode correct? Oplossing: (a) Stel dat de Writer eerst Write(4) doet en dan Write(2). Na de Write(4) zijn alle bits voor positie 4 op 0, neem aan dat de Reader begint en de 0len leest tot positie 3. De Writer voert zijn complete Write(2) uit, daarna staan alle bits voorbij positie 2 op 0. De Reader gaat verder en leest alleen maar 0len. (b) Het is niet atomic, een inversie is mogelijk, omdat de gebruikte bits zelf alleen maar regular zijn. (Scenario hiervoor: stel de waarde is 2 maar de Writer doet een Write(3). De Writer begint met r[3] op 1 te zetten, en gaat dan r[2] op 0 zetten met r[2].write(0). Tijdens deze write kan de Reader een volledige Read afwerken, waarbij de read op r[2], die met de r[2].write(0) overlapt, de nieuwe waarde al geeft zodat de Read resultaat 3 geeft. Daarna kan de Reader weer een volledige Read afwerken, waarbij de r[2].read, die weer met de r[2].write(0) overlapt, de oude waarde nog teruggeeft zodat deze Read 2 oplevert. We vermoeden dat de constructie wel een atomair register zou opleveren als de gebruikte bits atomair zijn. Als dat klopt, kun je een scenario alleen maar geven door niet-atomair gedrag van bits erin te bouwen.) (c) Met elke waarde, omdat deze return statement nooit wordt uitgevoerd. Beoordeling/Toelichting: Voor a, b en c elk 1pt. Beoordelingscodes: A = Motiveert een nee bij (b) met een Atomair scenario; 0pt. Bijvoorbeeld: een inversie bij twee overlappende reads, dit kan niet want als twee Reads overlappen kan nooit sprake zijn van inversie. B = Beredeneert bij (b) dat het atomair is, maar vanuit Atomaire bits. Slim, maar de gegeven bits zijn slechts regular; 1pt. D = Noemt alleen Definitie van atomic maar bewijst er niets over, 0pt. L = Beweert dat een Latere writewaarde kan worden geretourneerd. Kan niet, zou ook niet regular zijn; 0pt. M = Beredeneert bij (b) incorrectheid met een MultiWriter scenario, terwijl deze constructie alleen bedoeld is voor SingleWriter; 0pt. R = Beredeneert Regular ipv atomair, 0pt. S = Zegt bij (b) nee en noemt inversie, maar zonder Scenario te geven; 1pt. T = Beweert bij (b) dat het niet atomair is omdat Timestamps nodig zijn; 1/2pt. W = Voert bij (a) een scenario op waarin het fout gaat met twee Writers; zie M, 1pt. Z = Bij (c) zijn natuurlijk oneindig veel goede antwoorden, maar voor vol punt moet je
7 Zien dat het niet uitmaakt. 8. Technieken voor Register-Implementatie: Om sterke registers te implementeren kunnen deze technieken worden gebruikt: Silent Write, Unaire notatie, Serienummers. (a) Hoe werkt de Silent Write? (b) Welke techniek gebruikt men om van een regular bit naar een m-valued register te gaan? Welke techniek gebruikt men om van een Safe bit naar een Regular bit te gaan? Oplossing: (a) De Writer onthoudt welke waarde hij als laatste geschreven heeft, en voert een write alleen uit als de nieuwe waarde anders is. (b) Dat gaat met unaire notatie. Dat gaat met Silent Write. Beoordeling/Toelichting: 2pt.
8 9. Multivalued register: Je kunt een 12-waardig regular register maken uit een array van 12 regular bits. De Writer schrijft waarde x door bit x op 1 te zetten en de lagere bits op 0, de reader zoekt vanaf positie 0 naar de eerste 1: Write(x): Read: r[x].write(1) for(i=0; i<12; i++) for (i=x-1; i>=0; i--) if (r[i].read == 1) r[i].write(0) return i (a) Stel dat de Writer al een Write(4) en daarna een Write(7) heeft afgerond, dat dan een Read begint, en terwijl die Read bezig is, begint de Writer aan een Write(5). Welke uitkomsten mag de Reader krijgen volgens de eis van Regular? (b) Otto zegt dat je de write(1) ook later kunt doen, dwz., de r[x].write(1) na de for-lus zetten. Laat door een voorbeeld zien dat het register dan niet Regular is. Oplossing: (a) Regular betekent dat een Read die overlapt met een of meer writes, de waarde ziet van een van de overlappende Writes of de laatste die daarvoor was afgesloten. Volgens het gegeven was de Write(7) de laatst afgeronde, en de Write(5) overlappend. De 4 uit de eerste Write is onnacceptabel, omdat die door de afgeronde Write(7) onzichtbaar is geworden. (Zouden er tijdens de Read nog andere Writes beginnen, dan is de waarde daarvan ook acceptabel.) (b) Stel dat de inhoud van het Register eerst 7 is en dat deze 7 wordt overschreven door een 3; de bits staan dan op Nu begint de Writer aan een Write(5), en gaat volgens Otto s idee eerst de eerste vijf bits op 0 zetten. Inhoud van het Register is dan , en als nu de Reader langskomt en een volledige Read uitvoert, levert die 7 op. Volgens de eisen van Regular zou dat alleen 5 mogen zijn (huidige overlappende Write) of 3 (voorgaande afgesloten Write). Beoordeling/Toelichting: Totaal 3pt. Voor a 1pt voor b 2pt. Beoordelingscodes: M = Beredeneert bij (b) incorrectheid met een MultiWriter scenario, terwijl deze constructie alleen bedoeld is voor SingleWriter; 0pt. R = Zeg bij (a) wat mag volgens de eis Regular, niet wat kan volgens deze implementatie. U = Scenario waar een kleine waarde wordt overschreven met een grotere, en de Reader Uit de array loopt. Om compleet aan te tonen dat dit niet regular is, zou je het moeten aanvullen met de default die in dat geval opgeleverd moet worden. Deze scenario s zijn in principe wel goed gerekend. W = Voert bij (b) een scenario op waarin het fout gaat met twee Writers; zie M, 1pt.
Eerste Toets Concurrency 20 december 2018, , Educ-β.
Eerste Toets Concurrency 20 december 2018, 11.00 13.00, Educ-β. Motiveer je antwoorden kort! Stel geen vragen over deze toets; als je een vraag niet duidelijk vindt, schrijf dan op hoe je de vraag interpreteert
Nadere informatieWerkcollegebundel Deel 1 Concurrency 8 oktober 2018, Gerard Tel, Niet verspreiden 1!.
Werkcollegebundel Deel 1 Concurrency 8 oktober 2018, Gerard Tel, Niet verspreiden 1!. Deze bundel bevat een collectie toetsvragen over het eerste deel van Concurrency. Behalve dat goede antwoorden worden
Nadere informatieToetsbundel Deel 1 Concurrency 10 december 2015, Gerard Tel, Niet verspreiden 1!.
Toetsbundel Deel 1 Concurrency 10 december 2015, Gerard Tel, Niet verspreiden 1!. Deze bundel bevat een collectie toetsvragen over het eerste deel van Concurrency. Je kunt deze bundel gebruiken voor je
Nadere informatieOpgaven Binair Zoeken en Invarianten Datastructuren, 4 mei 2016, Werkgroep.
Opgaven Binair Zoeken en Invarianten Datastructuren, 4 mei 2016, Werkgroep. Gebruik deze opgaven, naast die uit het boek, om de stof te oefenen op het werkcollege. Cijfer: Op een toets krijg je meestal
Nadere informatieOpgaven Eigenschappen van Getallen Security, 2018, Werkgroep.
Opgaven Eigenschappen van Getallen Security, 2018, Werkgroep. Gebruik deze opgaven, naast die uit het boek, om de stof te oefenen op het werkcollege. Cijfer: Op een toets krijg je meestal zes tot acht
Nadere informatieEerste Toets Datastructuren 22 mei 2019, , Educ-β en Megaron.
Eerste Toets Datastructuren 22 mei 209, 3.30 5.30, Educ-β en Megaron. Motiveer je antwoorden kort! Stel geen vragen over deze toets; als je een vraag niet duidelijk vindt, schrijf dan op hoe je de vraag
Nadere informatieVoorbeeldtentamen Inleiding programmeren (IN1608WI), Oktober 2003, , Technische Universiteit Delft, Faculteit EWI, Afdeling 2.
Voorbeeldtentamen Inleiding programmeren (IN1608WI), Oktober 2003, 14.00-15.30, Technische Universiteit Delft, Faculteit EWI, Afdeling 2. Dit tentamen bestaat uit twee delen. Deel 1 (14.00-14.45, gesloten
Nadere informatieVariabelen en statements in ActionScript
Ontwikkelen van Apps voor ios en Android Variabelen en statements in ActionScript 6.1 Inleiding Als we het in de informatica over variabelen hebben, bedoelen we een stukje in het geheugen van de computer
Nadere informatieHOOFDSTUK 3. Imperatief programmeren. 3.1 Stapsgewijs programmeren. 3.2 If Then Else. Module 4 Programmeren
HOOFDSTUK 3 3.1 Stapsgewijs programmeren De programmeertalen die tot nu toe genoemd zijn, zijn imperatieve of procedurele programmeertalen. is het stapsgewijs in code omschrijven wat een programma moet
Nadere informatieTweede Toets Datastructuren 28 juni 2017, , Educ-β.
Tweede Toets Datastructuren 28 juni 2017, 13.30 15.30, Educ-β. Motiveer je antwoorden kort! Stel geen vragen over deze toets; als je een vraag niet duidelijk vindt, schrijf dan op hoe je de vraag interpreteert
Nadere informatieTweede Toets Concurrency 2 februari 2017, , Educ-β.
Tweede Toets Concurrency 2 februari 2017, 8.30 10.30, Educ-β. Motiveer je antwoorden kort! Zet je mobiel uit. Stel geen vragen over deze toets; als je een vraag niet duidelijk vindt, schrijf dan op hoe
Nadere informatieTentamen Objectgeorienteerd Programmeren IN1205 Voorbeeld
Tentamen Objectgeorienteerd Programmeren IN1205 Voorbeeld Afdeling ST Faculteit EWI TU Delft Bij dit tentamen mag u gebruik maken van: Barnes, Object-Oriented Programming with Java en de Notitie Algoritmiek
Nadere informatieEerste Toets Datastructuren 11 juli 2018, , Educ-α.
Eerste Toets Datastructuren 11 juli 2018, 13.30 15.30, Educ-α. Motiveer je antwoorden kort! Stel geen vragen over deze toets; als je een vraag niet duidelijk vindt, schrijf dan op hoe je de vraag interpreteert
Nadere informatieTweede Toets Datastructuren 29 juni 2016, , Educ-Γ.
Tweede Toets Datastructuren 29 juni 2016, 13.30 15.30, Educ-Γ. Motiveer je antwoorden kort! Zet je mobiel uit. Stel geen vragen over deze toets; als je een vraag niet duidelijk vindt, schrijf dan op hoe
Nadere informatieElfde college algoritmiek. 18 mei Algoritme van Dijkstra, Heap, Heapify & Heapsort
Algoritmiek 018/Algoritme van Dijkstra Elfde college algoritmiek 18 mei 018 Algoritme van Dijkstra, Heap, Heapify & Heapsort 1 Algoritmiek 018/Algoritme van Dijkstra Uit college 10: Voorb. -1- A B C D
Nadere informatieTentamen Object Georiënteerd Programmeren TI1200 30 januari 2013, 9.00-12.00 Afdeling SCT, Faculteit EWI, TU Delft
Tentamen Object Georiënteerd Programmeren TI1200 30 januari 2013, 9.00-12.00 Afdeling SCT, Faculteit EWI, TU Delft Bij dit tentamen mag je geen gebruik maken van hulpmiddelen zoals boek of slides. Dit
Nadere informatieOpgaven Fibonacci-getallen Datastructuren, 23 juni 2017, Werkgroep.
Opgaven Fibonacci-getallen Datastructuren, 3 juni 017, Werkgroep Gebruik deze opgaven, naast die uit het boek, om de stof te oefenen op het werkcollege Cijfer: Op een toets krijg je meestal zes tot acht
Nadere informatieTentamen Imperatief en Object-georiënteerd programmeren in Java voor CKI
Tentamen Imperatief en Object-georiënteerd programmeren in Java voor CKI Vrijdag 22 januari 2010 Toelichting Dit is een open boek tentamen. Communicatie en het gebruik van hulpmiddelen zijn niet toegestaan.
Nadere informatieTiende college algoritmiek. 13/21 april Gretige Algoritmen Algoritme van Dijkstra
Algoritmiek 017/Gretige Algoritmen Tiende college algoritmiek 13/1 april 017 Gretige Algoritmen Algoritme van Dijkstra 1 Algoritmiek 017/Gretige Algoritmen Muntenprobleem Gegeven onbeperkt veel munten
Nadere informatieOpgaven Abstracte Datastructuren Datastructuren, Werkgroep, 31 mei 2017.
Opgaven Abstracte Datastructuren Datastructuren, Werkgroep, 31 mei 2017. Gebruik deze opgaven, naast die uit het boek, om de stof te oefenen op het werkcollege. Cijfer: Op een toets krijg je meestal zes
Nadere informatie1 Inleiding in Functioneel Programmeren
1 Inleiding in Functioneel Programmeren door Elroy Jumpertz 1.1 Inleiding Aangezien Informatica een populaire minor is voor wiskundestudenten, leek het mij nuttig om een stukje te schrijven over een onderwerp
Nadere informatieProgrammeren A. Genetisch Programma voor het Partitie Probleem. begeleiding:
Programmeren A Genetisch Programma voor het Partitie Probleem begeleiding: Inleiding Het Partitie Probleem luidt als volgt: Gegeven een verzameling van n positieve integers, vindt twee disjuncte deelverzamelingen
Nadere informatievoegtoe: eerst methode bevat gebruiken, alleen toevoegen als bevat() false is
PROEF-Tentamen Inleiding programmeren (IN1608WI), X januari 2010, 9.00-11.00, Technische Universiteit Delft, Faculteit EWI, Afdeling 2. Open boek tentamen: bij het tentamen mag alleen gebruik worden gemaakt
Nadere informatieOpgaven Sommaties Datastructuren, 8 mei 2019, Werkgroep.
Opgaven Sommaties Datastructuren, 8 mei 019, Werkgroep. Gebruik deze opgaven, naast die uit het boek, om de stof te oefenen op het werkcollege. Cijfer: Op een toets krijg je meestal zes tot acht opgaven.
Nadere informatieProgrammeren 1 20 januari 2012 Prof. T. Schrijvers
Programmeren 1 20 januari 2012 Prof. T. Schrijvers Instructies Schrijf al je antwoorden op deze vragenbladen (op de plaats die daarvoor is voorzien). Geef ook je kladbladen af. Bij heel wat vragen moet
Nadere informatieTweede Toets Datastructuren 27 juni 2018, , Olympos Hal 2.
Tweede Toets Datastructuren 27 juni 2018, 13.30 15.30, Olympos Hal 2. Motiveer je antwoorden kort! Stel geen vragen over deze toets; als je een vraag niet duidelijk vindt, schrijf dan op hoe je de vraag
Nadere informatieProeftentamen in1211 Computersystemen I (NB de onderstreepte opgaven zijn geschikt voor de tussentoets)
TECHNISCHE UNIVERSITEIT DELFT Faculteit Informatietechnologie en Systemen Afdeling ISA Basiseenheid PGS Proeftentamen in1211 Computersystemen I (NB de onderstreepte opgaven zijn geschikt voor de tussentoets)
Nadere informatieGelijktijdigheid: Wederzijdse Uitsluiting & Synchronisatie Concurrency: Mutual Exclusion & Synchonization (5e ed: 5.1-5.2, Appendix A.
Gelijktijdigheid: Wederzijdse Uitsluiting & Synchronisatie Concurrency: Mutual Exclusion & Synchonization (5e ed: 51-52, Appendix A1) Processes zijn meestal niet onafhankelijk Bijvoorbeeld: 2 processen
Nadere informatieOpgaven Binair Zoeken en Invarianten Datastructuren, 28 april 2017, Werkgroep.
Opgaven Binair Zoeken en Invarianten Datastructuren, 28 april 2017, Werkgroep. Gebruik deze opgaven, naast die uit het boek, om de stof te oefenen op het werkcollege. Cijfer: Op een toets krijg je meestal
Nadere informatieIMP Uitwerking week 13
IMP Uitwerking week 13 Opgave 1 Nee. Anders moet bijvoorbeeld een venster applicatie een subklasse zijn van zowel Frame en WindowListener. Als de applicatie ook een button of een menu heeft, dan moet het
Nadere informatieTweede Toets Security 9 november 2016, , Educ-α.
Tweede Toets Security 9 november 2016, 8.30 10.30, Educ-α. Motiveer je antwoorden kort! Zet je mobiel uit. Stel geen vragen over deze toets; als je een vraag niet duidelijk vindt, schrijf dan op hoe je
Nadere informatiePracticumopgave 3: SAT-solver
Practicumopgave 3: SAT-solver Modelleren en Programmeren 2015/2016 Deadline: donderdag 7 januari 2016, 23:59 Introductie In het vak Inleiding Logica is onder andere de propositielogica behandeld. Veel
Nadere informatieTentamen Objectgeorienteerd Programmeren TI februari Afdeling ST Faculteit EWI TU Delft
I ' Tentamen Objectgeorienteerd Programmeren TI 1200 1 februari 2012 9.00-12.00 Afdeling ST Faculteit EWI TU Delft Bij dit tentamen mag je geen gebruik maken van hulpmiddelen zoals boek of slides. Dit
Nadere informatieProgrammeermethoden NA
Programmeermethoden NA Week 6: Lijsten Kristian Rietveld http://liacs.leidenuniv.nl/~rietveldkfd/courses/prna/ Bij ons leer je de wereld kennen 1 Getal opbouwen Stel je leest losse karakters (waaronder
Nadere informatieBEGINNER JAVA Inhoudsopgave
Inhoudsopgave 6 Configuratie Hallo wereld! Praten met de gebruiker Munt opgooien Voorwaarden Lussen......6 Configuratie Met deze Sushi kaarten ga je een simpel spel maken met één van de meest populaire
Nadere informatieHOGESCHOOL VAN AMSTERDAM Informatica Opleiding. CPP 1 van 10
CPP 1 van 10 ADSdt 1-2009 TENTAMENVOORBLAD Voor aanvang van het tentamen s.v.p. de tentamengegevens goed doorlezen om eventuele misverstanden te voorkomen!! Naam student : Studentnummer : Groep : Studieonderdeel
Nadere informatieUitwerkingen derde deeltentamen Gameprogrammeren Vrijdag 6 november 2015, uur
Uitwerkingen derde deeltentamen Gameprogrammeren Vrijdag 6 november 2015, 11.00-13.00 uur 1. Deze opgave bestaat uit een aantal deelvragen. Houd het antwoord kort: één of twee zinnen per onderdeel kan
Nadere informatieTweede Huiswerk Security 26 of 28 oktober, 11.00, Nabespreken op Werkcollege.
Tweede Huiswerk Security 26 of 28 oktober, 11.00, Nabespreken op Werkcollege. Kijk het huiswerk van je collega s na en schrijf de namen van de nakijkers linksboven en het totaalcijfer rechts onder de namen
Nadere informatieProgrammeermethoden. Recursie. week 11: november kosterswa/pm/
Programmeermethoden Recursie week 11: 21 25 november 2016 www.liacs.leidenuniv.nl/ kosterswa/pm/ 1 Pointers Derde programmeeropgave 1 Het spel Gomoku programmeren we als volgt: week 1: pointerpracticum,
Nadere informatieUitgebreide uitwerking Tentamen Complexiteit, juni 2017
Uitgebreide uitwerking Tentamen Complexiteit, juni 017 Opgave 1. a. Een pad van de wortel naar een blad stelt de serie achtereenvolgende arrayvergelijkingen voor die het algoritme doet op zekere invoer.
Nadere informatieAlgoritmisch Denken: Dodo s Bit Parity
Algoritmisch Denken: Dodo s Opdrachtomschrijving: Jouw opdracht, als je deze accepteert, is om Mimi (een Dodo) te leren een bit parity fout te ontdekken en te herstellen. Leerdoelen: Ik kan een correct
Nadere informatieGödels theorem An Incomplete Guide to Its Use and Abuse, Hoofdstuk 3
Gödels theorem An Incomplete Guide to Its Use and Abuse, Hoofdstuk 3 Koen Rutten, Aris van Dijk 30 mei 2007 Inhoudsopgave 1 Verzamelingen 2 1.1 Definitie................................ 2 1.2 Eigenschappen............................
Nadere informatieProgrammeermethoden NA. Week 6: Lijsten
Programmeermethoden NA Week 6: Lijsten Kristian Rietveld http://liacs.leidenuniv.nl/~rietveldkfd/courses/prna2016/ Getal opbouwen Stel je leest losse karakters (waaronder cijfers) en je moet daar een getal
Nadere informatieTENTAMEN Programmeren 1 VOORBEELDUITWERKING
TENTAMEN Programmeren 1 vakcode: 213500 datum: 10 juli 2004 tijd: 9:00-12:30 uur VOORBEELDUITWERKING Algemeen Bij dit tentamen mag gebruik worden gemaakt van het boek van Niño/Hosch, en van de handleiding
Nadere informatieArduino Workshop 1 Zuid-Limburg
Arduino Workshop 1 Zuid-Limburg Leren door doen Mei 2016 - slides voor Arduino workshop 1 v2.5 Zuid-Limburg PA3CZS, PA0FOT, ON4CDU, PE1EAM 1 Workshop 1 Workshop 1 concentreert op kennismaking en eenvoudige
Nadere informatieZelftest Inleiding Programmeren
Zelftest Inleiding Programmeren Document: n0824test.fm 22/01/2013 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INLEIDING BIJ DE ZELFTEST INLEIDING PROGRAMMEREN Deze
Nadere informatieJavascript oefenblad 1
Leer de basis van Javascript. Javascript oefenblad 1 Niels van Velzen Javascript oefenblad 1 Pagina 2 Inleiding Javascript is niet altijd even makkelijk. Vooral aan het begin is het even wennen hoe de
Nadere informatieCollege 13: Patterns (2)
Concurrency Gerard Tel / Jacco Bikker - november 2016 februari 2017 College 13: Patterns (2) Welkom! genda: Collective Operations Reduce Scan Stencil Recurrence Concurrency college 13 Patterns (2) 3 Collectives
Nadere informatie17 Operaties op bits. 17.1 Bitoperatoren en bitexpressies
17 Operaties op bits In hoofdstuk 1 is gezegd dat C oorspronkelijk bedoeld was als systeemprogrammeertaal om het besturingssysteem UNIX te implementeren. Bij dit soort toepassingen komt het voor dat afzonderlijke
Nadere informatieDIAGNOSTISCHE TOETS Softwaresystemen UITWERKING
DIAGNOSTISCHE TOETS Softwaresystemen datum: Donderdag van Week 7 UITWERKING Deze diagnostische toets bevat vragen over excepties en concurrency. Beantwoord de vragen zo goed mogelijk in 30 minuten Bespreek
Nadere informatieZelftest Programmeren in Java
Zelftest Programmeren in Java Document: n0883test.fm 22/01/2013 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INLEIDING BIJ DE ZELFTEST PROGRAMMEREN IN JAVA Deze test
Nadere informatieJe gaat leren programmeren en een spel bouwen met de programmeertaal Python. Websites zoals YouTube en Instagram zijn gebouwd met Python.
1 Je gaat leren programmeren en een spel bouwen met de programmeertaal Python. Websites zoals YouTube en Instagram zijn gebouwd met Python. Voordat je leert programmeren, moet je jouw pc zo instellen dat
Nadere informatieProgrammeren (1) Examen NAAM:
Schrijf al je antwoorden op deze vragenbladen (op de plaats die daarvoor is voorzien) en geef zowel klad als net af. Bij heel wat vragen moet je zelf Java-code schrijven. Hou dit kort en bondig. Je hoeft
Nadere informatieBewijs door inductie
Bewijs door inductie 1 Bewijs door inductie Vaak bestaat een probleem erin aan te tonen dat een bepaalde eigenschap geldt voor elk natuurlijk getal. Als je wilt weten of iets waar is voor alle natuurlijke
Nadere informatieModelleren en Programmeren
Modelleren en Programmeren Jeroen Bransen 11 december 2015 Ingebouwde datastructuren Meer boomstructuren Access specifiers Gebruikersinvoer Codestijl Packages SAT-solver Ingebouwde datastructuren Ingebouwde
Nadere informatieDergelijke functionaliteit kunnen we zelf ook aan eigen code toevoegen.
Indexers in C#.Net In deze tutorial ga ik het hebben over indexers. Bij het gebruik van bijvoorbeeld een ArrayList object, kan je de gegevens uit deze collectie opvragen als ware het een array. // ArrayList
Nadere informatieOefententamen 2. Tijd: 2 uur. Maximaal aantal punten: 30. Naam: Studentnummer:
Oefententamen 2 C Naam: Studentnummer: Tijd: 2 uur Maximaal aantal punten: 30 Menselijke compiler (10 punten) 0. (1 punt) Stel, je haalt het tentamen als je tenminste een 5.5 gemiddeld hebt gehaald voor
Nadere informatie[8] De ene 1 is de andere niet
[8] De ene 1 is de andere niet Volg mee via 08_Types.py In de volgende leerfiche gaan we rekenen met Python. Dat kan je in een programma doen, maar dat kan je ook gewoon vanuit het Shell-venster doen.
Nadere informatieCombinatoriek en rekenregels
Combinatoriek en rekenregels Les 4: Rekenregels (deze les sluit aan bij de paragraaf 8 van Hoofdstuk 1 Combinatoriek en Rekenregels van de Wageningse Methode, http://www.wageningsemethode.nl/methode/het-lesmateriaal/?s=y456v-d)
Nadere informatieTentamen Programmeren in C (EE1400)
TU Delft Faculteit EWI Tentamen Programmeren in C (EE1400) 28 jan 2011, 9.00 12.00 - Zet op elk antwoordblad je naam en studienummer. - Beantwoord alle vragen zo nauwkeurig mogelijk. - Wanneer C code gevraagd
Nadere informatieHet relaas van de beginnende programmeur. Het hoe en waarom van de assistent
Het relaas van de beginnende programmeur Het hoe en waarom van de assistent 1. Help, mijn code doet niks... Mogelijke oplossingen: Heb je op run geduwd (groene pijltje)? Zolang je niet op 'run' duwt, kent
Nadere informatieRCL Arduino Workshop 1
RCL Arduino Workshop 1 Leren door doen april 2015 - slides voor RCL Arduino workshop 1 ON4CDU & ON8VQ Workshop Leren door doen Werken in een groep Beperkte tijd Alleen essentiele vragen stellen Thuis oefenen
Nadere informatieCombinatorische Algoritmen: Binary Decision Diagrams, Deel III
Combinatorische Algoritmen: Binary Decision Diagrams, Deel III Sjoerd van Egmond LIACS, Leiden University, The Netherlands svegmond@liacs.nl 2 juni 2010 Samenvatting Deze notitie beschrijft een nederlandse
Nadere informatieVerzamelingen, Lijsten, Functioneel Programmeren
Verzamelingen, Lijsten, Functioneel Programmeren Jan van Eijck jve@cwi.nl Lezing 4e Gymnasium, 19 november 2015 Samenvatting In deze lezing gaan we in op de overeenkomsten en verschillen tussen verzamelingen
Nadere informatieDatastructuren: stapels, rijen en binaire bomen
Programmeermethoden Datastructuren: stapels, rijen en binaire bomen week 12: 23 27 november 2015 www.liacs.leidenuniv.nl/ kosterswa/pm/ 1 Inleiding In de informatica worden Abstracte DataTypen (ADT s)
Nadere informatieTiende college algoritmiek. 4 mei Gretige Algoritmen Algoritme van Dijkstra
Tiende college algoritmiek mei 018 Gretige Algoritmen Algoritme van Dijkstra 1 Muntenprobleem Gegeven onbeperkt veel munten van d 1,d,...d m eurocent, en een te betalen bedrag van n (n 0) eurocent. Alle
Nadere informatieCombinatoriek groep 1 & 2: Recursie
Combinatoriek groep 1 & : Recursie Trainingsweek juni 008 Inleiding Bij een recursieve definitie van een rij wordt elke volgende term berekend uit de vorige. Een voorbeeld van zo n recursieve definitie
Nadere informatieExamen Geavanceerde Computerarchitectuur
Examen Geavanceerde Computerarchitectuur Academiejaar 2006-2007 Dinsdag 16 januari 2007, 14u00 Prof. dr. ir. L. Eeckhout Richting: Enkele opmerkingen vooraf: Vul eerst en vooral op ieder blad Uw naam en
Nadere informatieDatastructuren: stapels, rijen en binaire bomen
Programmeermethoden : stapels, rijen en binaire bomen Walter Kosters week 12: 26 30 november 2018 www.liacs.leidenuniv.nl/ kosterswa/pm/ 1 en Vierde programmeeropgave Othello programmeren we als volgt:
Nadere informatieTake-home Tentamen Protocolvericatie. Universiteit van Amsterdam. 27 Maart 1994
Take-home Tentamen Protocolvericatie Vakgroep Programmatuur Universiteit van Amsterdam 27 Maart 1994 Algemene Opmerkingen Dit tentamen omvat zes reguliere opgaven plus een bonusopgave. Opgaves 1, 2, 5
Nadere informatieExamen Datastructuren en Algoritmen II
Tweede bachelor Informatica Academiejaar 2016 2017, eerste zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. Lees de hele
Nadere informatieTEST INFORMATICA 1STE BACHELOR IN DE INGENIEURSWETENSCHAPPEN - ACADEMIEJAAR
TEST INFORMATICA 1STE BACHELOR IN DE INGENIEURSWETENSCHAPPEN - ACADEMIEJAAR 2011-2012 Zaterdag 5 november 2011, 9u30 NAAM :... VRAAG 1: EVEN VEEL [5 PUNTEN] Schrijf een methode evenveel(), met twee argumenten,
Nadere informatieD-dag 2014 Vrijeschool Zutphen VO. D -DAG 13 februari 2014: 1+ 1 = 2. (en hoe nu verder?) 1 = 2en hoe nu verder?
D -DAG 13 februari 2014: 1+ 1 = 2 (en hoe nu verder?) 1 = 2en hoe nu verder? 1 Inleiding Snel machtsverheffen Stel je voor dat je 7 25 moet uitrekenen. Je weet dat machtsverheffen herhaald vermenigvuldigen
Nadere informatieNAAM: Programmeren 1 Examen 29/08/2012
Programmeren 29 augustus 202 Prof. T. Schrijvers Instructies Schrijf al je antwoorden op deze vragenbladen (op de plaats die daarvoor is voorzien). Geef ook je kladbladen af. Bij heel wat vragen moet je
Nadere informatieTentamen Bionformatica deel A(8C074), 18 januari 2007, u.
Tentamen Bionformatica deel A(8C074), 18 januari 2007, 10.30-12.00u. Twee algemene opmerkingen Het tentamen bestaat uit 5 opgaven verdeeld over 2 pagina s. Op pagina 2 staat voor iedere opgave het maximale
Nadere informatieAutomaten. Informatica, UvA. Yde Venema
Automaten Informatica, UvA Yde Venema i Inhoud Inleiding 1 1 Formele talen en reguliere expressies 2 1.1 Formele talen.................................... 2 1.2 Reguliere expressies................................
Nadere informatieDe Leidsche Flesch Studievereniging voor Natuurkunde, Sterrenkunde, Wiskunde en Informatica sinds DLF Pointerworkshop
DLF Pointerworkshop Opgaven 2 maart 2016 XKCD # 371 In dit document staan een aantal oude tentamenopgaven om te oefenen voor het hertentamen PR Bij de selectie is rekening gehouden met de opgaven die het
Nadere informatieComputerarchitectuur en netwerken. Memory management Assembler programmering
Computerarchitectuur en netwerken 2 Memory management Assembler programmering Lennart Herlaar 10 september 2018 Inhoud 1 Protectie: Hoe het O.S. programma s tegen elkaar kan beschermen modes memory management
Nadere informatieUitwerking Tweede deeltentamen Imperatief programmeren - versie 1 Vrijdag 21 oktober 2016, uur
Uitwerking Tweede deeltentamen Imperatief programmeren - versie 1 Vrijdag 21 oktober 2016, 13.00-15.00 uur 1. De situatie die ontstaat door class A : B C D; kan beschreven worden door (a) B is een A (b)
Nadere informatieHoorcollege I: PGA en de talen PGLA en PGLB Alban Ponse
Hoorcollege I: PGA en de talen PGLA en PGLB Alban Ponse CSP Faculteit NWI Instituut voor Informatica Universiteit van Amsterdam http://www.science.uva.nl/~alban/ 26 september 2003, 1 Wie zijn wij? Inge
Nadere informatieAls een PSD selecties bevat, deelt de lijn van het programma zich op met de verschillende antwoorden op het vraagstuk.
HOOFDSTUK 3 3.1 Stapsgewijs programmeren In de vorige hoofdstukken zijn programmeertalen beschreven die imperatief zijn. is het stapsgewijs in code omschrijven wat een programma moet doen, net als een
Nadere informatieOpgaven Hash Tabellen Datastructuren, 15 juni 2018, Werkgroep.
Opgaven Hash Tabellen Datastructuren, 15 juni 2018, Werkgroep. Gebruik deze opgaven, naast die uit het boek, om de stof te oefenen op het werkcollege. Cijfer: Op een toets krijg je meestal zes tot acht
Nadere informatieVerzamelingen, Lijsten, Functioneel Programmeren
Verzamelingen, Lijsten, Functioneel Programmeren Jan van Eijck jve@cwi.nl Stage Ignatiuscollege, 17 mei 2010 Samenvatting In deze lezing gaan we in op de overeenkomsten en verschillen tussen verzamelingen
Nadere informatieMAVO-C I CENTRALE EXAMENCOMMISSIE VASTSTELLING OPGAVEN CORRECTIEVOORSCHRIFT bij het examen NATUURKUNDE MAVO-C.
MAVO-C I CENTRALE EXAMENCOMMISSIE VASTSTELLING OPGAVEN CORRECTIEVOORSCHRIFT 1985 bij het examen NATUURKUNDE MAVO-C Eerste tijdvak N.B. de algemene regels zijn gewijzigd ten opzichte van 1984. De gewijzigde
Nadere informatieInleiding Logica voor CKI, 2013/14
Inleiding Logica voor CKI, 2013/14 Albert Visser Department of Philosophy, Faculty Humanities, Utrecht University 14 oktober, 2013 1 Overview 2 Overview 2 Overview 2 Overview 2 Overview 2 Overview 3 Wegens
Nadere informatieFuncties deel 1. Vijfde college
3 Functies deel 1 Vijfde college 1 Ch.3 Functions and Algorithms Hoofdstuk 3 uit Schaum gaat over functies en algoritmen. Het gedeelte over algoritmen ( 3.8 en 3.9) komt uitgebreid aan de orde bij toekomstige
Nadere informatieTentamen Inleiding Programmeren (IN1608WI), duur van de toets 2 uur Technische Universiteit Delft, Faculteit EWI, Afdeling 2.
Tentamen Inleiding Programmeren (IN1608WI), duur van de toets 2 uur Technische Universiteit Delft, Faculteit EWI, Afdeling 2. Gesloten boek examen: er mag geen gebruik worden gemaakt van het studieboek.
Nadere informatieMAVO-D I CENTRALE EXAMENCOMMISSIE VASTSTELLING OPGAVEN CORRECTIEVOORSCHRIFT bij het examen NATUURKUNDE MAVO-D.
MAVO-D I CENTRALE EXAMENCOMMISSIE VASTSTELLING OPGAVEN CORRECTIEVOORSCHRIFT 1985 bij het examen NATUURKUNDE MAVO-D Eerste tijdvak N.B. de algemene regels zijn gewijzigd ten opzichte van 1984. De gewijzigde
Nadere informatieEen inleiding in de Unified Modeling Language 67
Een inleiding in de Unified Modeling Language 67 1.4.5. Toepassing 5: Klasse Kaart. De opdracht bestaat erin algemene klassen te maken zodanig dat het mogelijk wordt om het even welk kaartspel te maken.
Nadere informatieLineaire data structuren. Doorlopen van een lijst
Lineaire data structuren array: vast aantal data items die aaneensluitend gestockeerd zijn de elementen zijn bereikbaar via een index lijst: een aantal individuele elementen die met elkaar gelinkt zijn
Nadere informatieVersie 2: B C D D A C D A C C. Versie 3: C D A A B D A B D D. Versie 4: A D C C B D C B D D. Versie 5: B A D D C A D C A A
Uitwerking Tweede deeltentamen Mobiel programmeren - versie 1 Vrijdag 1 februari 2019, 11.00 13.00 uur Voor de meerkeuzevragen hebben we verschillende versies. Dit zijn de juiste antwoorden per versie.
Nadere informatieProgrammeermethoden. Recursie. Walter Kosters. week 11: november kosterswa/pm/
Programmeermethoden Recursie Walter Kosters week 11: 20 24 november 2017 www.liacs.leidenuniv.nl/ kosterswa/pm/ 1 Vierde programmeeropgave 1 De Grote getallen programmeren we als volgt: week 1: pointerpracticum,
Nadere informatieLineaire algebra 1 najaar Lineaire codes
Lineaire algebra 1 najaar 2008 Lineaire codes Bij het versturen van digitale informatie worden in principe ketens van bits verstuurd die de waarde 0 of 1 kunnen hebben. Omdat de transmissiekanalen door
Nadere informatieTechnische documentatie Overdracht bedrijfsvoorraad B2B AFS 6.2
Technische documentatie Overdracht bedrijfsvoorraad B2B AFS 6.2 A2SP 1 / 7 Wijzigingshistorie Versie Datum Gewijzigd door Wijzigingen 0.9 14-4-2015 Yves van den Berg Draft A2SP 2 / 7 Inhoud Wijzigingshistorie...
Nadere informatieLeren Programmeren met Visual Basic 6.0 Les 3+4. Hoofdstuk 4 : De Selectie
Leren Programmeren met Visual Basic 6.0 Les 3+4 Hoofdstuk 4 : De Selectie Visual Basic 6.0 1 Basisstructuren (herhaling) Sequentie (HK2) : Alle opdrachten gewoon na mekaar uitvoeren. Hier worden geen keuzes
Nadere informatieProgrammeermethoden NA. Week 5: Functies (vervolg)
Programmeermethoden NA Week 5: Functies (vervolg) Kristian Rietveld http://liacs.leidenuniv.nl/~rietveldkfd/courses/prna/ Bij ons leer je de wereld kennen 1 Functies Vorige week bekeken we functies: def
Nadere informatieOpgaven Heaps Datastructuren, 8 juni 2018, Werkgroep.
Opgaven Heaps Datastructuren, 8 juni 2018, Werkgroep. Gebruik deze opgaven, naast die uit het boek, om de stof te oefenen op het werkcollege. Cijfer: Op een toets krijg je meestal zes tot acht opgaven.
Nadere informatieStacks and queues. Hoofdstuk 6
Hoofdstuk 6 Stacks and queues I N T R O D U C T I E In dit hoofdstuk worden drie datastructuren stack, queue en deque behandeld. Om deze datastructuren te implementeren, worden onder andere arrays en linked
Nadere informatieDynamisch Programmeren. Het Rugzakprobleem
INLEIDING Dynamisch Programmeren 1 Dynamisch Programmeren Section Page Inleiding................................................. 1 1 Oplossing................................................ 2 2 Subprobleem.............................................
Nadere informatievan PSD naar JavaScript
2015 van PSD naar JavaScript F. Vonk versie 2 19-9-2015 inhoudsopgave 1. inleiding... - 2-2. ontwikkelomgeving... - 3-3. programmeerconcepten... - 4 - statement... - 4 - sequentie... - 4 - variabele en
Nadere informatie