Modelleren en Programmeren
|
|
- Esther de Haan
- 7 jaren geleden
- Aantal bezoeken:
Transcriptie
1 Modelleren en Programmeren Deeltoets 2. Proefopgaven Het tentamen bestaat uit tien vragen, elk goed voor drie punten. minimaal 16.5 uit 30 punten haalt. Je bent geslaagd als je Opgave 1 Neem de volgende queries over, en geef aan hoe Prolog erop reageert.?- X = mia, X = Vincent.?- X = mia, X = vincent.?- k(s(g),y) = k(x,t(k)).?- k(s(g),t(k)) = k(x,t(y)).?- [X []] = [a].?- [X,[]] = [a,[] []]. Opgave 2 Hier de definitie van optellen voor natuurlijke getallen in successornotatie. add(0,x,x). add(s(x),y,s(z)) :- add(x,y,z).... 1
2 Opgave 3 Hieronder de definitie van een predicaat times/3 waarmee je vermenigvuldigen modelleert als herhaald optellen. times_acc(x,y,z) :- times(x,y,0,z). % wrapper times(s(x),y,a,z) :- add(y,a,a1), times(x,y,a1,z). times(0,_,a,a). Definieer nu modulo/3 als herhaald aftrekken. De relatie modulo(x,y,z) drukt uit dat Z de rest is van delen van X door Y. Je definitie heeft een grensgeval en een recursief geval. - Het grensgeval wordt bereikt als X kleiner is dan de deler Y. In dat geval is X zelf de gezochte rest. - Het recursieve geval formuleert modulo rekenen als herhaald aftrekken. Denk erom dat de deler groter moet zijn dan nul. Voorbeeld:?-modulo(s(s(s(0))),s(s(0)),Z). Antwoord: Z = s(0). 2
3 Opgave 4 Hieronder een programma len/2 om de lengte van een lijst uit te rekenen. len([],0). len([_ T],N) :- len(t,m),n is M+1. De definitie is links-recursief. Geef een betere definitie met behulp van een predicaat len/3 dat van een accumulator gebruik maakt: len(lijst,acc,lengte) slaagt als Lengte de lengte is van Lijst uitgerekend met behulp van Acc als accumulator. len/3 loopt van links naar rechts door de invoerlijst, en hoogt de accumulator bij elke stap op. Als het eind van de invoerlijst is bereikt, is de gezochte lengte gelijk aan de waarde van de accumulator. Geef een wrapper, die de goede startwaarde voor de accumulator invult voor de?? hieronder. Definieer dan het recursieve en het grensgeval voor len/3. len(lijst,lengte) :- len(lijst,??,lengte). Opgave 5 Het ingebouwde predicaat select/3 werkt als volgt: select(e,lijst,rest) slaagt als Rest de lijst is die overblijft als je een voorkomen van element E uit Lijst verwijdert, en faalt als E niet in Lijst voorkomt. Bijvoorbeeld:?- select(a,[b,a,c,a],l). L = [b, c, a] ; L = [b, a, c] ; false. Definieer select/3. Je definitie heeft een basisgeval, en een recursief geval. Je mag geen hulppredicaten gebruiken. 3
4 Opgave 6 We kunnen een getal in binaire notatie in Prolog representeren als een niet lege lijst van 0-en en 1-en wordt dan [0], 5 10 wordt [1,0,1], enzovoort. Definieer een predicaat bitnot/2 waarmee je een dergelijke lijst omzet in zijn bitsgewijze complement: 0 wordt 1 en omgekeerd. Bijvoorbeeld:?- bitnot([1,0,0,1],l). L = [0,1,1,0]. Opgave 7 Om een decimaal getal n 10 om te rekenen naar m 2 in binaire notatie is er het volgende eenvoudige algoritme. Deel n door twee: de rest is de laatste bit van m; voor de voorlaatste bit herhaal je met het naar beneden afgeronde resultaat van n/2; ga zo door tot het resultaat van verder delen nul wordt. Schrijf een Prolog programma dec2bin/2: dec2bin(dec,bin) zet decimaal getal Dec om in binair Bin, gerepresenteerd als lijst. Werk voor decimale invoer groter dan nul met een accumulator. Hieronder alvast het grensgeval, en de wrapper die dec2bin/3 aanroept met [] als beginwaarde voor de accumulator. Je kan de ingebouwde rekenpredicaten gebruiken: N//M voor delen afgerond op gehele getallen, en N mod M voor modulo rekenen. Hieronder een illustratie van de werking van die rekenpredicaten. dec2bin(0,[0]). dec2bin(n,bin) :- N>0, dec2bin(n,[],bin).?- X is 5//2.?- X is 5 mod 2. X = 2. X = 1. 4
5 Opgave 8 Een binaire boom is leeg, of hij bestaat uit een wortelknoop met een linker en een rechter dochterboom, waarbij die dochters zelf binaire bomen zijn. De lege boom representeren we in Prolog als [], een niet-lege boom als een term t(links,knoop,rechts). We noemen een binaire boom welgebalanceerd als voor elke knoop geldt dat het aantal knopen in zijn linker en rechter dochterboom op zijn hoogst met één verschillen. Hieronder de vier mogelijkheden om een welgebalanceerde boom met vier knopen te maken. Definieer een predicaat balans/2 waarmee je de welgebalanceerde binaire bomen genereert. balans(n,boom) slaagt als Boom een welgebalanceerde boom is met N knopen. Het aantal knopen druk je uit als een natuurlijk getal in successornotatie. De aanroep die de vier bomen van het plaatje hierboven genereert ziet er als volgt uit.?- balans(s(s(s(s(0)))),boom). Boom = t(t(t([], _, []), _, []), _, t([], _, [])) ; Boom = t(t([], _, t([], _, [])), _, t([], _, [])) ; Boom = t(t([], _, []), _, t(t([], _, []), _, [])) ; Boom = t(t([], _, []), _, t([], _, t([], _, []))) ; false. Het basisgeval voor balans/2 is eenvoudig: de lege boom is de enige welgebalanceerde boom met nul knopen. Voor het recursieve geval heb je een knoop nodig voor de wortel. Er blijft een even of oneven aantal knopen over die je dan over de linker en rechter dochters van de wortel 5
6 kan verdelen. Zoals bij de opgave over modulo rekenen is add/3 het enige hulppredicaat dat je mag gebruiken. Opgave 9 Een postorder traversal van een binaire boom bezoekt de knopen van de linker en rechter deelboom in postorder volgorde, gevolgd door de wortelknoop. Bijvoorbeeld: a b c d e?-b = t(t(_,a,_),b,t(t(_,c,_),d,t(_,e,_))), postorder(b,lijst). Lijst = [a,c,e,d,b]. Hieronder een naieve definitie van postorder/2 die gebruik maakt van append/3. postorder(t(l,x,r),knopen):- postorder(l,linkerknopen), postorder(r,rechterknopen), append(rechterknopen,[x],rechts), append(linkerknopen,rechts,knopen). postorder([],[]). Werk de append/3 aanroepen weg door gebruik te maken van verschillijsten. De wrapper: postorder(boom,knopen) :- postorder(boom,knopen,[]). 6
7 Opgave 10 Het ingebouwde findall/3 gebruik je om alle oplossingen voor een vraag in een lijst te verzamelen: findall(object,goal,list) slaagt als List de lijst van objecten Object is die voldoen aan Goal. Bijvoorbeeld:?- findall(prefix,append(prefix,_,[a,b,c,d]),lijst). Lijst = [[], [a], [a, b], [a, b, c], [a, b, c, d]]. Hieronder de definitie van shuffle/3 voor het in elkaar voegen van twee lijsten. shuffle([],[],[]). shuffle([h R],S,[H T]) :- shuffle(r,s,t). shuffle(r,[h S],[H T]) :- shuffle(r,s,t). Laten we een verzameling representeren als een lijst zonder herhalingen. Gebruik findall/3 en shuffle/3 om een definitie te geven van powerset/2: powerset(set,subsets) slaagt als Subsets de lijst van deelverzamelingen is van de verzameling Set. Bijvoorbeeld:?- powerset([1,2,3],l). L = [[1, 2, 3], [1, 2], [1, 3], [1], [2, 3], [2], [3], []]. 7
Inleiding Logica 2013
Inleiding Logica 2013 Praktica Logisch Programmeren 21, 28 oktober 2013 1 Stamboom Op deze wiki pagina vind je een stukje stamboom van een willekeurige familie. Opgave 1 Vertaal die stamboom, beginnend
Nadere informatieModelleren en programmeren. Week 9: werken met incomplete datastructuren
Modelleren en programmeren Week 9: werken met incomplete datastructuren 1. Incomplete datastructuren Een krachtige programmeertechniek is het gebruik van incomplete datastructuren: datastructuren die variabelen
Nadere informatieUitwerkingen Rekenen met cijfers en letters
Uitwerkingen Rekenen met cijfers en letters Maerlant College Brielle 5 oktober 2009 c Swier Garst - RGO Middelharnis 2 Inhoudsopgave Rekenen met gehele getallen 7. De gehele getallen.....................................
Nadere informatieDatastructuren Uitwerking jan
Datastructuren Uitwerking jan 2015 1 1a. Een abstracte datastructuur is een beschrijving van een datastructuur, met de specificatie van wat er opgeslagen wordt (de data en hun structuur) en welke operaties
Nadere informatieTweede college algoritmiek. 12 februari Grafen en bomen
College 2 Tweede college algoritmiek 12 februari 2016 Grafen en bomen 1 Grafen (herhaling) Een graaf G wordt gedefinieerd als een paar (V,E), waarbij V een eindige verzameling is van knopen (vertices)
Nadere informatieWouter Geraedts Processen & Processoren
FACULTEIT DER NATUURWETENSCHAPPEN, WISKUNDE EN INFORMATICA Wouter Geraedts Overzicht Welkom op het werkcollege van Processen & Processoren! Gang van zaken Behandelen oefenopgaven w.geraedts@student.ru.nl
Nadere informatieLogisch programmeren 2012
Logisch programmeren 2012 Opdrachten Week 8 1 Fibonacci woorden Een Fibonacci woord is een eindig rijtje over het twee-letter alfabet {1, 2}. De rangorde van een Fibonacci woord w is de som van de samenstellende
Nadere informatie2 REKENEN MET BREUKEN 3. 2.3 Optellen van breuken 6. 2.5 Aftrekken van breuken 9. 2.7 Vermenigvuldigen van breuken 11. 2.9 Delen van breuken 13
REKENEN MET BREUKEN. De breuk. Opgaven. Optellen van breuken 6. Opgaven 8. Aftrekken van breuken 9.6 Opgaven 9.7 Vermenigvuldigen van breuken.8 Opgaven.9 Delen van breuken.0 Opgaven. Een deel van een deel.
Nadere informatie1 Rekenen in eindige precisie
Rekenen in eindige precisie Een computer rekent per definitie met een eindige deelverzameling van getallen. In dit hoofdstuk bekijken we hoe dit binnen een computer is ingericht, en wat daarvan de gevolgen
Nadere informatieInleiding Programmeren 2
Inleiding Programmeren 2 Gertjan van Noord November 26, 2018 Stof week 3 nogmaals Zelle hoofdstuk 8 en recursie Brookshear hoofdstuk 5: Algoritmes Datastructuren: tuples Een geheel andere manier om te
Nadere informatie1 Rekenen met gehele getallen
1 Inhoudsopgave 1 Rekenen met gehele getallen... 1.1 De gehele getallen... 1. Optellen... 1. Opgaven... 1. Aftrekken... 1. Opgaven... 1. Vermenigvuldigen... 1. Opgaven... 1.8 Delen... 9 1.9 Opgaven...9
Nadere informatie1.1 Rekenen met letters [1]
1.1 Rekenen met letters [1] Voorbeeld 1: Een kaars heeft een lengte van 30 centimeter. Per uur brand er 6 centimeter van de kaars op. Hieruit volgt de volgende woordformule: Lengte in cm = -6 aantal branduren
Nadere informatie1. Optellen en aftrekken
1. Optellen en aftrekken Om breuken op te tellen of af te trekken maak je de breuken gelijknamig. Gelijknamig maken wil zeggen dat je zorgt voor 'gelijke noemers': Om de breuken met 'derden' en 'vijfden'
Nadere informatieExamen Datastructuren en Algoritmen II
Tweede bachelor Informatica Academiejaar 2012 2013, tweede zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. Lees de hele
Nadere informatieUitwerking tentamen Algoritmiek 10 juni :00 13:00
Uitwerking tentamen Algoritmiek 10 juni 2014 10:00 13:00 1. Dominono s a. Toestanden: n x n bord met in elk hokje een O, een X of een -. Hierbij is het aantal X gelijk aan het aantal O of hooguit één hoger.
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 informatieOpdracht 1 Topics on Parsing and Formal Languages - fall 2010
Opdracht 1 Topics on Parsing and Formal Languages - fall 2010 Rick van der Zwet 13 november 2010 Samenvatting Dit schrijven zal uitwerkingen van opgaven behandelen uit het boek [JS2009]
Nadere informatieGetaltheorie groep 3: Primitieve wortels
Getaltheorie groep 3: Primitieve wortels Trainingsweek juni 2008 Inleiding Voor a relatief priem met m hebben we de orde van a modulo m gedefinieerd als ord m (a) = min { n Z + a n 1 (mod m) }. De verzameling
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 informatieReken zeker: leerlijn kommagetallen
Reken zeker: leerlijn kommagetallen De gebruikelijke didactische aanpak bij Reken Zeker is dat we eerst uitleg geven, vervolgens de leerlingen flink laten oefenen (automatiseren) en daarna het geleerde
Nadere informatieUitwerking tentamen Algoritmiek 9 juli :00 13:00
Uitwerking tentamen Algoritmiek 9 juli 0 0:00 :00. (N,M)-game a. Toestanden: Een geheel getal g, waarvoor geldt g N én wie er aan de beurt is (Tristan of Isolde) b. c. Acties: Het noemen van een geheel
Nadere informatieInleiding Programmeren 2
Inleiding Programmeren 2 Gertjan van Noord November 28, 2016 Stof week 3 nogmaals Zelle hoofdstuk 8 en recursie Brookshear hoofdstuk 5: Algoritmes Datastructuren: tuples Een geheel andere manier om te
Nadere informatie2 Recurrente betrekkingen
WIS2 1 2 Recurrente betrekkingen 2.1 Fibonacci De getallen van Fibonacci Fibonacci (= Leonardo van Pisa), 1202: Bereken het aantal paren konijnen na één jaar, als 1. er na 1 maand 1 paar pasgeboren konijnen
Nadere informatieVBA voor Doe het Zelvers deel 20
VBA voor Doe het Zelvers deel 20 Handleiding van Auteur: leofact Augustus 2015 handleiding: VBA voor Doe het Zelvers deel 20 Vorige aflevering In het vorige deel werd besproken hoe je de structuur en vensteropbouw
Nadere informatieModelleren en Programmeren
Modelleren en Programmeren Jeroen Bransen 13 december 2013 Terugblik Fibonacci public class Fibonacci { public static void main(string[] args) { // Print het vijfde Fibonaccigetal System.out.println(fib(5));
Nadere informatieRekenen met cijfers en letters
Rekenen met cijfers en letters Maerlant College Brielle 5 oktober 009 c Swier Garst - RGO Middelharnis Inhoudsopgave Rekenen met gehele getallen 7. De gehele getallen.....................................
Nadere informatieWerkboekje
Staartdeling Werkboekje www.roykenen.nl Inhoud Uitleg Staartdeling... 2 Opgave 1... 2 Opgave 2... 5 Deler is groter dan eerste cijfer deeltal... Opgave 3... Opgave... 8 Staartdeling met een rest... 9 Opgave
Nadere informatieAlgoritmiek. 15 februari Grafen en bomen
Algoritmiek 15 februari 2019 Grafen en bomen 1 Grafen (herhaling) Een graaf G wordt gedefinieerd als een paar (V,E), waarbij V een eindige verzameling is van knopen (vertices) en E een verzameling van
Nadere informatieANTWOORDEN blz. 1. d. 345 + 668 = 1013; 61 007 + 50 215 = 111 222; 102 240 30 628 = 71 612; 1 000 000 1 = 999 999
ANTWOORDEN blz. 3 a. Zeer onwaarschijnlijk Zeer onwaarschijnlijk a. Dan heb je ergens een schuld uitstaan 86 Dan hadden beide een kopie van de kerfstok; om fraude te voorkomen a. MMXII, MCCCXXVII, DLXXXVI,
Nadere informatieDatastructuren Uitwerking jan
Datastructuren Uitwerking jan 16 1 1a) Een ADT wordt gekenmerkt door de opgeslagen gegevens en de beschikbare operaties. De Priority Queue bevat en verzameling elementen waarbij elk element en eigen waarde
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 informatieHet Breukenboekje. Alles over breuken
Het Breukenboekje Alles over breuken breuken breukentaal tekening getal een hele 1 een halve een kwart een achtste ½ of ½ ¼ of ¼ ⅛ of ⅛ 3 breuken breukentaal tekening getal een vijfde ⅕ of ⅕ een tiende
Nadere informatieOpdracht 1 Topics on Parsing and Formal Languages - fall 2010
Opdracht 1 Topics on Parsing and Formal Languages - fall 2010 Rick van der Zwet 8 december 2010 Samenvatting Dit schrijven zal uitwerkingen van opgaven behandelen uit het boek [JS2009]
Nadere informatiestart -> id (k (f c s) (g s c)) -> k (f c s) (g s c) -> f c s -> s c
Een Minimaal Formalisme om te Programmeren We hebben gezien dat Turing machines beschouwd kunnen worden als universele computers. D.w.z. dat iedere berekening met natuurlijke getallen die met een computer
Nadere informatieAchtste college algoritmiek. 12 april Verdeel en Heers. Dynamisch Programmeren
Achtste college algoritmiek 12 april 2019 Verdeel en Heers Dynamisch Programmeren 1 Uit college 7: Partitie Partitie Partitie(A[l r]) :: // partitioneert een (sub)array, met A[l] als spil (pivot) p :=
Nadere informatieUitgebreide uitwerking Tentamen Complexiteit, mei 2007
Uitgebreide uitwerking Tentamen Complexiteit, mei 007 Opgave. a. Een beslissingsboom beschrijft de werking van het betreffende algoritme (gebaseerd op arrayvergelijkingen) op elke mogelijke invoer. In
Nadere informatie2.0 Voorkennis. Rekenregels machten: 5) a 0 = 1. p p q p q a p q q. p q pq p p p. Willem-Jan van der Zanden
2.0 Voorkennis Voorbeeld: (a + b) 2 = a 2 + 2ab + b 2 (a + b) 3 = (a +b)(a2 + 2ab + b2) = a 3 + 2a 2 b + ab 2 + a 2 b +2ab 2 + b 3 = a 3 + 3a 2 b + 3ab 2 + b 3 Rekenregels machten: p p q pq a pq 1) a a
Nadere informatieLab Webdesign: Javascript 3 maart 2008
H5: OPERATORS In dit hoofdstuk zullen we het hebben over de operators (of ook wel: operatoren) in JavaScript waarmee allerlei rekenkundige en logische bewerkingen kunnen worden uitgevoerd. Daarbij zullen
Nadere informatieHoofdstuk 3. Equivalentierelaties. 3.1 Modulo Rekenen
Hoofdstuk 3 Equivalentierelaties SCHAUM 2.8: Equivalence Relations Twee belangrijke voorbeelden van equivalentierelaties in de informatica: resten (modulo rekenen) en cardinaliteit (aftelbaarheid). 3.1
Nadere informatieOplossing van opgave 6 en van de kerstbonusopgave.
Oplossing van opgave 6 en van de kerstbonusopgave. Opgave 6 Lesbrief, opgave 4.5 De getallen m en n zijn verschillende positieve gehele getallen zo, dat de laatste drie cijfers van 1978 m en 1978 n overeenstemmen.
Nadere informatie8.1 Herleiden [1] Herleiden bij vermenigvuldigen: -5 3a 6b 8c = -720abc 1) Vermenigvuldigen cijfers (let op teken) 2) Letters op alfabetische volgorde
8.1 Herleiden [1] Herleiden bij vermenigvuldigen: -5 3a 6b 8c = -720abc 1) Vermenigvuldigen cijfers (let op teken) 2) Letters op alfabetische volgorde Optellen: 5a + 3b + 2a + 6b = 7a + 9b 1) Alleen gelijksoortige
Nadere informatieAanvullende tekst bij hoofdstuk 1
Aanvullende tekst bij hoofdstuk 1 Wortels uit willekeurige getallen In paragraaf 1.3.5 hebben we het worteltrekalgoritme besproken. Dat deden we aan de hand van de relatie tussen de (van tevoren gegeven)
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 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 informatiePracticum Programmeerprincipes
REEKS 3 Practicum Programmeerprincipes 2009-2010 fvdbergh@vub.ac.be WERKEN MET FUNCTIES IN PICO Functies, controlestructuren, recursie, iteratie, blokstructuren en functionele parameters in Pico. Het woordenboek
Nadere informatie3.1 Haakjes wegwerken [1]
3.1 Haakjes wegwerken [1] Oppervlakte rechthoek (Manier 1): Opp. = l b = (a + b) c = (a + b)c Oppervlakte rechthoek (Manier 2): Opp. = Opp. Groen + Opp. Rood = l b + l b = a c + b c = ac + bc We hebben
Nadere informatieII.3 Equivalentierelaties en quotiënten
II.3 Equivalentierelaties en quotiënten Een belangrijk begrip in de wiskunde is het begrip relatie. Een relatie op een verzameling is een verband tussen twee elementen uit die verzameling waarbij de volgorde
Nadere informatieMemoriseren: Een getal is deelbaar door 10 als het laatste cijfer een 0 is. Of: Een getal is deelbaar door 10 als het eindigt op 0.
REKENEN VIJFDE KLAS en/of ZESDE KLAS Luc Cielen 1. REGELS VAN DEELBAARHEID. Luc Cielen: Regels van deelbaarheid, grootste gemene deler en kleinste gemeen veelvoud 1 Deelbaarheid door 10, 100, 1000. Door
Nadere informatieZevende college Algoritmiek. 6 april Verdeel en Heers
Zevende college Algoritmiek 6 april 2018 Verdeel en Heers 1 Algoritmiek 2018/Backtracking Programmeeropdracht 2 Puzzel 2: D O N A L D G E R A L D + R O B E R T Elke letter stelt een cijfer voor (0,1,...,9)
Nadere informatieCombinatoriek groep 1
Combinatoriek groep 1 Recursie Trainingsdag 3, 2 april 2009 Getallenrijen We kunnen een rij getallen a 0, a 1, a 2,... op twee manieren definiëren: direct of recursief. Een directe formule geeft a n in
Nadere informatie10 Meer over functies
10 Meer over functies In hoofdstuk 5 hebben we functies uitgebreid bestudeerd. In dit hoofdstuk bekijken we drie andere aspecten van functies: recursieve functies dat wil zeggen, functies die zichzelf
Nadere informatieOPLOSSINGEN VAN DE OEFENINGEN
OPLOSSINGEN VAN DE OEFENINGEN 1.3.1. Er zijn 42 mogelijke vercijferingen. 2.3.4. De uitkomsten zijn 0, 4 en 4 1 = 4. 2.3.6. Omdat 10 = 1 in Z 9 vinden we dat x = c 0 +... + c m = c 0 +... + c m. Het getal
Nadere informatieRecursion. Introductie 37. Leerkern 37. Terugkoppeling 40. Uitwerking van de opgaven 40
Recursion Introductie 37 Leerkern 37 5.1 Foundations of recursion 37 5.2 Recursive analysis 37 5.3 Applications of recursion 38 Terugkoppeling 40 Uitwerking van de opgaven 40 Hoofdstuk 5 Recursion I N
Nadere informatieALGORITMIEK: antwoorden werkcollege 5
ALGORITMIEK: antwoorden werkcollege 5 opgave 1. a. Brute force algoritme, direct afgeleid uit de observatie: loop v.l.n.r. door de tekst; als je een A tegenkomt op plek i (0 i < n 1), loop dan van daaruit
Nadere informatieReken zeker: leerlijn kommagetallen
Reken zeker: leerlijn kommagetallen De gebruikelijke didactische aanpak bij Reken Zeker is dat we eerst uitleg geven, vervolgens de leerlingen flink laten oefenen (automatiseren) en daarna het geleerde
Nadere informatieDeeltoets Digitale technieken
Deeltoets Digitale technieken André Deutz 22 oktober, 2007 De opgaven kunnen uiteraard in een willekeurige volgorde gemaakt worden geef heel duidelijk aan op welke opgave een antwoord gegegeven wordt.
Nadere informatie6.1 Kwadraten [1] HERHALING: Volgorde bij berekeningen:
6.1 Kwadraten [1] HERHALING: Volgorde bij berekeningen: 1) Haakjes wegwerken 2) Vermenigvuldigen en delen van links naar rechts 3) Optellen en aftrekken van links naar rechts Schrijf ALLE stappen ONDER
Nadere informatieDiscrete Wiskunde, College 12. Han Hoogeveen, Utrecht University
Discrete Wiskunde, College 12 Han Hoogeveen, Utrecht University Dynamische programmering Het basisidee is dat je het probleem stap voor stap oplost Het probleem moet voldoen aan het optimaliteitsprincipe
Nadere informatie8.1 Herleiden [1] Herleiden bij vermenigvuldigen: -5 3a 6b 8c = -720abc 1) Vermenigvuldigen cijfers (let op teken) 2) Letters op alfabetische volgorde
8.1 Herleiden [1] Herleiden bij vermenigvuldigen: -5 3a 6b 8c = -720abc 1) Vermenigvuldigen cijfers (let op teken) 2) Letters op alfabetische volgorde Optellen: 5a + 3b + 2a + 6b = 7a + 9b 1) Alleen gelijksoortige
Nadere informatieExamencursus. wiskunde A. Rekenregels voor vereenvoudigen. Voorbereidende opgaven VWO kan niet korter
Voorbereidende opgaven VWO Examencursus wiskunde A Tips: Maak de voorbereidende opgaven voorin in een van de A4-schriften die je gaat gebruiken tijdens de cursus. Als een opdracht niet lukt, werk hem dan
Nadere informatieExamen Datastructuren en Algoritmen II
Tweede bachelor Informatica Academiejaar 2008 2009, tweede zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. Lees elke
Nadere informatieInfo-books. Toegepaste Informatica. Deel 20 : Algoritmen en programmeren in Access en Excel (Basis) AL20. Jos Gils Erik Goossens
Info-books AL20 Toegepaste Informatica Deel 20 : Algoritmen en programmeren in Access en Excel (Basis) Jos Gils Erik Goossens Hoofdstuk 6 Lusstructuren of iteraties 6.1 Probleemstelling Het gebeurt dikwijls
Nadere informatie1.3 Rekenen met pijlen
14 Getallen 1.3 Rekenen met pijlen 1.3.1 Het optellen van pijlen Jeweetnuwatdegetallenlijnisendat0nochpositiefnochnegatiefis. Wezullen nu een soort rekenen met pijlen gaan invoeren. We spreken af dat bij
Nadere informatie8.0 Voorkennis ,93 NIEUW
8.0 Voorkennis Voorbeeld: In 2014 waren er 12.500 speciaalzaken. Sinds 2012 is het aantal speciaalzaken afgenomen met 7%. Bereken hoeveel speciaalzaken er in 2012 waren. Aantal 2014 = 0,93 Aantal 2012
Nadere informatie4.1 Negatieve getallen vermenigvuldigen [1]
4.1 Negatieve getallen vermenigvuldigen [1] Voorbeeld 1: 5 x 3 = 15 (3 + 3 + 3 + 3 + 3 = 15) Voorbeeld 2: 5 x -3 = -15 (-3 +-3 +-3 +-3 +-3 = -3-3 -3-3 -3 = -15) Voorbeeld 3: -5 x 3 = -15 Afspraak: In plaats
Nadere informatieBij het cijferend optellen beginnen we bij de eenheden en werken we van rechts naar links:
Cijferend optellen t/m 1000 Voor u ligt de verkorte leerlijn cijferend optellen groep 5 van Reken zeker. Deze verkorte leerlijn is bedoeld voor de leerlingen die nieuw instromen in groep 6 en voor de leerlingen
Nadere informatieModelleren en Programmeren: Prolog
Modelleren en Programmeren: Prolog Marijn Schraagen 13 januari 2016 Herhaling basiselementen Lijsten Trace Ingebouwde lijstpredicaten Feiten en regels aanpassen Herhaling basiselementen Feiten en regels
Nadere informatieALGORITMIEK: antwoorden werkcollege 5
1 ALGORITMIEK: antwoorden werkcollege 5 opgave 1. a. Brute force algoritme, direct afgeleid uit de observatie: loop v.l.n.r. door de tekst; als je een A tegenkomt op plek i (0 i < n 1), loop dan van daaruit
Nadere informatieALGORITMIEK: antwoorden werkcollege 5
ALGORITMIEK: antwoorden werkcollege 5 opgave 1. a. Brute force algoritme, direct afgeleid uit de observatie: loop v.l.n.r. door de tekst; als je een A tegenkomt op plek i (0 i < n 1), loop dan van daaruit
Nadere informatieModelleren en Programmeren
Modelleren en Programmeren Jeroen Bransen 9 december 2015 Foreach String arrays Boomstructuren Interfaces Ingebouwde datastructuren Quiz Foreach Foreach Speciale versie van for om iets voor alle elementen
Nadere informatieHoofdstuk 5: Functies voor getallen en teksten
Programmeren in Microsoft Visual Basic 6.0, lessenserie voor het voortgezet onderwijs HAVO/VWO David Lans, Emmauscollege, Marnix Gymnasium Rotterdam, maart 2001 Hoofdstuk 5: Functies voor getallen en teksten
Nadere informatie5.0 Voorkennis. Rekenen met machten: Let op het teken van de uitkomst; Zet de letters (indien nodig) op alfabetische volgorde.
5.0 Voorkennis Rekenen met machten: Let op het teken van de uitkomst; Zet de letters (indien nodig) op alfabetische volgorde. Vermenigvuldigen is eponenten optellen: a 3 a 5 = a 8 Optellen alleen bij gelijknamige
Nadere informatie1. REGELS VAN DEELBAARHEID.
REKENEN VIJFDE KLAS Luc Cielen 1. REGELS VAN DEELBAARHEID. Deelbaarheid door 10, 100, 1000 10: het laatste cijfer (= cijfer van de eenheden) is 0 100: laatste twee cijfers zijn 0 (cijfers van de eenheden
Nadere informatieround up or round down 2 je maakt een getal kleiner door een getal van een ander af te halen, je mag ook numeral figure, number
GETALLEN SYMBOOL TERM ENGELS NEDERLANDS 1 afronden round up or round down een mooi, rond getal ervan maken 2 aftrekken to subtract je maakt een getal kleiner door een getal van een ander af te halen, je
Nadere informatierecursie Hoofdstuk 5 Studeeraanwijzingen De studielast van deze leereenheid bedraagt circa 6 uur. Terminologie
Hoofdstuk 5 Recursion I N T R O D U C T I E Veel methoden die we op een datastructuur aan kunnen roepen, zullen op een recursieve wijze geïmplementeerd worden. Recursie is een techniek waarbij een vraagstuk
Nadere informatiepublic boolean equaldates() post: returns true iff there if the list contains at least two BirthDay objects with the same daynumber
Tentamen TI1310 Datastructuren en Algoritmen, 15 april 2011, 9.00-12.00 TU Delft, Faculteit EWI, Basiseenheid Software Engineering Bij het tentamen mag alleen de boeken van Goodrich en Tamassia worden
Nadere informatieZevende college algoritmiek. 23/24 maart Verdeel en Heers
Zevende college algoritmiek 23/24 maart 2017 Verdeel en Heers 1 Algoritmiek 2017/Backtracking Tweede Programmeeropdracht 0 1 2 3 0 1 2 3 4 1 2 3 4 5 2 Algoritmiek 2017/Backtracking Tweede Programmeeropdracht
Nadere informatieUitwerking Puzzel 93-1, Doelloos
Uitwerking Puzzel 93-1, Doelloos Wobien Doyer Lieke de Rooij Volgens de titel is deze puzzel zonder doel, dus zonder bekende toepassing. Het doel is echter nul en dat is zeker in de wiskunde niet niks.
Nadere informatieb) Teken op de bijlage welke lampjes van het klokje branden om 19:45:52. Schrijf eronder hoe je dit bepaald/berekend hebt. (3p)
NATUURKUNDE KLAS 4 PW HOOFDSTUK PW HOOFDSTUK 3-23/03/2011 Totaal: 3 opgaven, 29 punten. Gebruik eigen BINAS toegestaan. Opgave 1: binair klokje Er bestaan klokjes die de tijd binair weergeven. Zie figuur
Nadere informatieUitwerking tentamen Analyse van Algoritmen, 29 januari
Uitwerking tentamen Analyse van Algoritmen, 29 januari 2007. (a) De buitenste for-lus kent N = 5 iteraties. Na iedere iteratie ziet de rij getallen er als volgt uit: i rij na i e iteratie 2 5 4 6 2 2 4
Nadere informatieDivide & Conquer: Verdeel en Heers vervolg. Algoritmiek
Divide & Conquer: Verdeel en Heers vervolg Algoritmiek Algoritmische technieken Vorige keer: Divide and conquer techniek Aantal toepassingen van de techniek Analyse met Master theorem en substitutie Vandaag:
Nadere informatie3.2 Basiskennis. 3.2.1 De getallenlijn. 3.2.2 Symbolen, tekens en getallen. 92 Algebra. Inhoofdstuk1zijnaandeordegeweest: Het=teken. =staat.
92 Algebra 3.2 Basiskennis Inhoofdstuk1zijnaandeordegeweest: 3.2.1 De getallenlijn... -5-4 -3-2 -1 0 1 2 3 4 5... 3.2.2 Symbolen, tekens en getallen Het=teken 5+2+3=10 = geeft aan dat wat links van = staat,
Nadere informatie6.1 Kwadraten [1] HERHALING: Volgorde bij berekeningen:
6.1 Kwadraten [1] HERHALING: Volgorde bij berekeningen: 1) Haakjes wegwerken 2) Vermenigvuldigen en delen van links naar rechts 3) Optellen en aftrekken van links naar rechts Schrijf ALLE stappen ONDER
Nadere informatieZevende college algoritmiek. 24 maart Verdeel en Heers
Zevende college algoritmiek 24 maart 2016 Verdeel en Heers 1 Verdeel en heers 1 Divide and Conquer 1. Verdeel een instantie van het probleem in twee (of meer) kleinere instanties 2. Los de kleinere instanties
Nadere informatieTweede college complexiteit. 12 februari Wiskundige achtergrond
College 2 Tweede college complexiteit 12 februari 2019 Wiskundige achtergrond 1 Agenda vanmiddag Floor, Ceiling Rekenregels logaritmen Tellen Formele definitie O, Ω, Θ met voorbeelden Stellingen over faculteiten
Nadere informatieRecursie: definitie. De som van de kwadraten van de getallen tussen m en n kan als volgt gedefinieerd worden:
Recursie: definitie Een object wordt recursief genoemd wanneer het partieel bestaat uit of partieel gedefinieerd is in termen van zichzelf. Recursie wordt gebruikt bij wiskundige definities, bijvoorbeeld:
Nadere informatieStart u met zwiso in verschillende leerjaren tegelijkertijd?
Start u met zwiso in verschillende leerjaren tegelijkertijd? Start u met zwiso in verschillende leerjaren tegelijkertijd? Geef dan eventueel aan het begin van het schooljaar enkele lessen uit het voorafgaande
Nadere informatie5.4.2 a. Neen: dit lukt alléén met 1, 3, 7 enzovoort. b. Ja: dit lukt met elk aantal knopen! Bijvoorbeeld de volgende boom: 1
c. het langste gerichte pad: 4 2 3 met lengte twee. d. het langste on -gerichte pad is oneindig lang: je mag bijvoorbeeld voortdurend tussen twee knopen heen en weer wandelen. e. ja: elke knoop heeft maximaal
Nadere informatieRSA. F.A. Grootjen. 8 maart 2002
RSA F.A. Grootjen 8 maart 2002 1 Delers Eerst wat terminologie over gehele getallen. We zeggen a deelt b (of a is een deler van b) als b = qa voor een of ander geheel getal q. In plaats van a deelt b schrijven
Nadere informatieKennismaking met programmeren
Kennismaking met programmeren werkblad binair tellen Project van de Pedagogische Academie, Hanzehogeschool Groningen en Groningen Programmeert in samenwerking met: Bij deze opdracht gaan jullie zelf leren
Nadere informatieExamen Datastructuren en Algoritmen II
Tweede bachelor Informatica Academiejaar 2012 2013, eerste zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. Lees de hele
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 informatieDiscrete Structuren. Piter Dykstra Sietse Achterop Opleidingsinstituut Informatica en Cognitie
Discrete Structuren Piter Dykstra Sietse Achterop Opleidingsinstituut Informatica en Cognitie www.math.rug.nl/~piter piter@math.rug.nl 3 maart 2008 GRAFEN & BOMEN Paragrafen 6.1-6.4 Discrete Structuren
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 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 informatie3.1 Negatieve getallen vermenigvuldigen [1]
3.1 Negatieve getallen vermenigvuldigen [1] Voorbeeld 1: 5 3 = 15 (3 + 3 + 3 + 3 + 3 = 15) Voorbeeld 2: 5-3 = -15 (-3 +-3 +-3 +-3 +-3 = -3-3 -3-3 -3 = -15) Voorbeeld 3: -5 3 = -15 Voorbeeld 4: -5 3 9 2
Nadere informatieKernbegrippen Handig met getallen 1, onderdeel Bewerkingen
Kernbegrippen Handig met getallen 1, onderdeel Bewerkingen 1.12 Kernbegrippen van de Kennisbasis Hele getallen, onderdeel Bewerkingen Aftrekker De aftrekker in een aftreksom is het getal dat aangeeft hoeveel
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 informatieOverzicht. Inleiding. Toepassingen. Verwante problemen. Modellering. Exacte oplosmethode: B&B. Insertie heuristieken. Local Search
Overzicht Inleiding Toepassingen Verwante problemen Modellering Exacte oplosmethode: B&B Insertie heuristieken Local Search Handelsreizigersprobleem 1 Cyclische permutatie van steden b 3 77 a 93 21 42
Nadere informatieUitgebreide uitwerking Tentamen Complexiteit, juni 2018
Uitgebreide uitwerking Tentamen Complexiteit, juni 018 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 informatie