Informatica. Deel II&III: les 7. AI linked lists - chips. Jan Lemeire Informatica deel II februari mei Parallel Systems: Introduction

Maat: px
Weergave met pagina beginnen:

Download "Informatica. Deel II&III: les 7. AI linked lists - chips. Jan Lemeire Informatica deel II februari mei Parallel Systems: Introduction"

Transcriptie

1 Informatica Deel II&III: les 7 AI linked lists - chips Jan Lemeire Informatica deel II februari mei 2015 Parallel Systems: Introduction

2 Hoofdstuk 9: Artificiële intelligentie Jan Lemeire Pag. 2 / 77

3 Waarmaken van Leibniz s droom (9) Artificiële intelligentie (8) Communicatie & internet (7) Operating system (6) Computatietheorie & Software (5) Efficiënt productieproces (4) Hardware architectuur Elektronica: (2) relais -schakeling, (3)geheugen (1) Digitaal & binair (0) Het idee Informatica deel III: technologie, historiek en economische aspecten

4 Artificiële Intelligentie, de grote uitdaging

5 Wanneer spreken we over intelligentie? Er is verschil tussen slimme algoritmen en intelligentie! Type A: Patronen herkennen Type B: Symbolisch = tekens die een betekenis (semantiek) hebben begrijpen is noodzakelijk voor intelligentie Jan Lemeire Pag. 6 / 77

6 AI: Type (A) toepassingen Stemherkenning Wat je zegt lukt redelijk momenteel maar herkennen wie spreekt, kan computer niet Spreken met de computer, zullen we het ooit? willen we het? Objectherkenning Vbn: security, gezichtsherkenning in facebook, verkeersbordherkenning, nummerplaatherkenning bij ingang VUB Echter moeilijk bij slecht weer, donkerte, Spel: patronen bepalen strategie/tactiek Computer = brute force, niet het gebruiken van patronen Jan Lemeire Pag. 7 / 77

7 Verkeersbordherkenning

8 INPUT OUTPUT Verkeersbordherkenning Met een neuraal netwerk (gebaseerd op hoe hersens werken) Code van verkeersbord Jan Lemeire Pag. 9 / 77

9 AI: type (B) toepassingen Google search Ask Jeeves: je kan vragen stellen Vertalingen: hoe goed/slecht is Google Translate? Consumentenprofiel adhv historische egevens Grootwarenhuizen Facebook, google: aangepaste reclame Is dit al intelligent?? Jan Lemeire Pag. 10 / 77

10 Internet 3.0: het semantische web Internet 1.0: door informatie browsen Internet 2.0: interactiviteit, gebruiker die informatie uploadt Internet 3.0: een web van verbanden tussen informatie op het internet => semantische pagina s Een overzicht van alle staatshoofden van Europa kan alleen beantwoord worden als er een webpagina over bestaat. Ipv enkel informatie, ook inhoud (semantiek - betekenis) datasets combineren en er informatie uithalen Begrijpen heeft te maken met semantiek, een droom voor het volgende internet. Zijn we daar kortbij? Ik vrees van niet. Jan Lemeire Pag. 11 / 77

11 De uitvinder van het internet 1989: maakte de eerste webserver en browser 1999: dacht verder: Tim Berners-Lee I have a dream for the Web [in which computers] become capable of analyzing all the data on the Web the content, links, and transactions between people and computers. A Semantic Web, which should make this possible, has yet to emerge, but when it does, the dayto-day mechanisms of trade, bureaucracy and our daily lives will be handled by machines talking to machines. The intelligent agents people have touted for ages will finally materialize. Jan Lemeire Pag. 12 / 77

12 Wanneer spreken we over intelligentie? Er is een verschil tussen slimme algoritmen en intelligentie! Veel van wat we intelligent noemen is in feite slechts gebaseerd op een goed doordacht algoritme Het leeralgoritme van Google Deepmind heeft veel tijd nodig om te leren en kan de resultaten niet extrapoleren van 1 spel naar een ander. Intelligentie heeft, volgens mij, te maken met begrijpen Jan Lemeire Pag. 13 / 77

13 Niet in cursus Wat is intelligentie? Marvin Minsky Founding father of AI Ontdekker van artificiële neurale netwerken The Society of Mind theory. Marvin Minsky Intelligentie ontstaat uit het samenvoegen van vele domme building blocks die elk iets kunnen. Het geheel is intelligent. Jan Lemeire Pag. 16 / 77

14 Wat is intelligentie? Informatie Redeneren Begrijpen Wikipedia: abstract thought, understanding, self-awareness, communication, reasoning, learning, having emotional knowledge, retaining, planning, and problem solving. Taal (noodzakelijk?) Verschil tussen slimme algoritmen en intelligentie! Er is nog geen eenduidige definitie van intelligentie! Jan Lemeire Pag. 17 / 77

15 Turing Test (1950) 'Can machines think? Artificiële intelligentie Kunnen we verschil maken tussen mens en computer? Computer Mens Alan Turing Omdat er geen duidelijke definitie bestaat over wat intelligentie inhoudt en wij als mens prototype zijn van intelligentie, bedacht Turing een test. Door vragen te stellen tracht je te ontdekken of er achter het scherm een computer of mens Informatica bevindt. II: les 7Als we geen verschil meer kunnen maken, kunnen we de Jan Lemeire Pag. 18 / 77 computer intelligent noemen.

16 Turing test Je kan je intelligent programma opladen dollar als je programma slaagt voor de Turing test Communiceer je met een computer of met een mens? Jan Lemeire Pag. 19 / 77

17 Turing test for bots The idea is to evaluate how we can make game bots, which are Non-Player Characters (NPCs) controlled by AI algorithms, appear as human as possible. Unreal Tournament 2004 (results) tournament against one another and about an equal number of humans tag opponents as human or bot. Jan Lemeire Pag. 20 / 77

18 Jan Lemeire Pag. 21 / 77

19 Piet Vroon Drie soorten hersens Instinct (Hersenstam/hypothalamus - reptielenherses) Conditionering (Limbisch systeem - zoogdierenbrein) Intelligentie (Neocortex meest recente hersens) 1 miljoen jaar geleden: evolutionaire sprong (vuur werktuigen) jaar geleden: finale evolutionaire sprong (taal?) Geest is federatie van delen Daden gevolg van combinatie 3 hersens 1990 Jan Lemeire Pag. 22 / 77

20 Volgens mij Met een graduele verbetering van de huidige technieken komen we er niet Echte ontdekking moet nog gebeuren Hoe we informatie opslaan/verwerken/gebruiken Natuurlijke taal? Wie is het genie die dit gaat ontdekken? Mijn drijfveer om informatica te gaan doen Jan Lemeire Pag. 23 / 77

21 Conclusie voor ingenieur Er is gespecialiseerd onderzoek naar A.I. Maar meestal is engineering nog noodzakelijk Meestal zijn simpele, slimme oplossingen even goed Zware A.I.-technieken nog weinig in gebruik, nog niet voor meteen Gebruik je intelligentie en ingenioziteit om adequate oplossing te vinden Jan Lemeire Pag. 24 / 77

22 Vandaag 1. AI 2. Gelinkte lijsten 3. Binaire bomen 4. Productieproces

23 Gelinkte lijst Linked list

24 Jan Lemeire Pag. 28 / 77

25 p. 86 Linked List Flexibel toevoegen en verwijderen J A V A Jan Lemeire Pag. 29 / 77

26 Niet in cursus Geheugengebruik Array J A V A Linked List J A V A Geordend in t begin Door elkaar na enkele veranderingen J A V A 8 N J A V A 8 N A B Jan Lemeire Pag. 30 / 77

27 public class LinkedList <T> { class Link<T>{ T data; Link<T> next; } Link(T data){ this.data = data; this.next = null; } Link(T data, Link<T> next){ this.data = data; this.next = next; } } Link<T> first; public LinkedList(){ first = null; } Jan Lemeire Pag. 31 / 77

28 Java s LinkedList Constructor Summary LinkedList() Constructs an empty list. LinkedList(Collection<? extends E> c) Constructs a list containing the elements of the specified collection, in the order they are returned by the collection's iterator. Method Summary boolean add(e e) Appends the specified element to the end of this list. Jan Lemeire Pag. 32 / 77

29 Toevoegen van een bepaald element aan het einde public void append(t data){ Link<T> el = new Link<T>(data); if (first == null){ first = el; } else { // zoek laatste link Link<T> last = first; while (last.next!= null) last = last.next; last.next = el; } } Jan Lemeire Pag. 33 / 77

30 Printen van lijst public String tostring(){ Link<T> link = first; String str = "["; boolean eerste = true; while (link!= null){ if (eerste) eerste = false; else str+=", "; str += link.data; link = link.next; // ga naar volgende } str+="]"; return str; } Jan Lemeire Pag. 34 / 77

31 Vinden van een bepaald element public T get(int index){ int i=0; Link<T> link = first; while (link!= null && i < index){ link = link.next; i++; } if (link == null) return null; else return link.data; } Nadeel: heel de lijst moet doorlopen worden Bij arrays kan je onmiddelijk naar de index springen! Jan Lemeire Pag. 35 / 77

32 Vinden van het i de element Niet in cursus Array = beginvakje + i Linked List J A V A J A V A Je bent niet zeker van waar het zich bevindt J A V A 8 N J A V A 8 N A B Jan Lemeire Pag. 36 / 77

33 Inlassen van een element p. 91 public void insert(t data, int index){ Link<T> newlink = new Link<T>(data); if (index == 0){ // wordt eerste element newlink.next = first; first = newlink; } else { int i=0; Link<T> link = first; while (link!= null && i < index - 1){ link = link.next; i++; } if (link == null) throw new IllegalArgumentException("Insert at "+index+" impossible; list has only "+(i+1)+" elements."); newlink.next = link.next; link.next = newlink; } } Jan Lemeire Pag. 37 / 77

34 Inlassen van een element Jan Lemeire Pag. 38 / 77

35 p. 92 Verwijderen van een element public void remove(int index){ if (index == 0){ if (first == null) throw new IllegalArgumentException("Removal of first element impossible; list has no elements."); first = first.next; } else { int i=0; Link<T> link = first; while (link!= null && i < index - 1){ link = link.next; i++; } if (link == null link.next == null) throw new IllegalArgumentException("Removal of element "+index+" impossible; list has only "+(i+1)+" elements."); link.next = link.next.next; } } Jan Lemeire Pag. 39 / 77

36 Verwijderen van een element link first J A V N A Jan Lemeire Pag. 40 / 77

37 Dubbele gelinkte lijst DoubleLinkedList first current last J A V A Voordelen: einde gemakkelijk te vinden houdt huidige positie bij Toepassing: word Jan Lemeire Pag. 41 / 77

38 Bomen

39 p. 95 Bomen (hoofdstuk 7) Arrays: basis ArrayList: flexibele grootte van array Linked Lists: flexibel toevoegen en verwijderen van elementen Maar: doorlopen van lijst is traag (bvb zoeken van element) Nodig: flexibele structuur om elementen in op te zoeken Jan Lemeire Pag. 43 / 77

40 Binaire boom Jan Lemeire Pag. 44 / 77

41 Alle mogelijkheden afgaan = aanmaken boom (les 7) Hfst 5 Initial UP LEFT UP LEFT DOWN UP LEFT RIGHT Oplossing puzzel zoeken LEFT DOWN DOWN LEFT RIGHT Jan Lemeire Pag. 45 / Geen binaire boom, kan meer of minder takken hebben

42 p. 96 Geordende binaire boom Zoeken kan snel Flexibel: toevoegen & verwijderen Jan Lemeire Pag. 46 / 77

43 Elke node is een object class Node<T>{ T data; Node<T> left, right; } Node(T data){ this.data = data; this.left = null; this.right = null; } Jan Lemeire Pag. 47 / 77

44 Boom object public class BinaryTree<T> { Node<T> root; Comparator<T> comparator; } public BinaryTree(Comparator<T> comparator){ this.comparator = comparator; root = null; } Jan Lemeire Pag. 48 / 77

45 Definiëren van ordening java.util Interface Comparator<T> Method Summary boolean int compare(t o1, T o2) Compares its two arguments for order. Returns a negative integer, zero, or a positive integer as the first argument is less than, equal to, or greater than the second. equals(object obj) Indicates whether some other object is "equal to" this comparator. Jan Lemeire Pag. 49 / 77

46 Voorbeeld comparator public class Student implements Comparable<Student>{ String voornaam, naam; int rolnummer, score; Vak[] vakken; int[] punten; Student(String voornaam, String naam, int rolnummer){ this.voornaam=voornaam; this.naam=naam; this.rolnummer=rolnummer; vakken = new Vak[4]; public int compareto(student student2) { int ordenaam = this.naam.compareto(student2.naam); if (ordenaam == 0) // beide dezelfde naam return this.voornaam.compareto(student2.voornaam); else return ordenaam; } Jan Lemeire Pag. 50 / 77

47 p. 98 IntegerComparator class IntegerComparator implements Comparator<Integer> public int compare(integer val1, Integer val2) { return val1 - val2; } } Jan Lemeire Pag. 51 / 77

48 Aanmaken van boom IntegerComparator comparator = new IntegerComparator(); BinaryTree<Integer> tree = new BinaryTree<Integer>(comparator); korter: BinaryTree<Integer> tree = new BinaryTree<Integer>(new IntegerComparator()); Jan Lemeire Pag. 52 / 77

49 Nog korter: via anonymous class BinaryTree<Integer> tree = new BinaryTree<Integer>( new Comparator<Integer>() public int compare(integer val1, Integer val2) { return val1 - val2; } } ); Jan Lemeire Pag. 53 / 77

50 Operaties op bomen

51 Belangrijke operaties 7.2 Toevoegen element 7.3 Zoeken element 7.5 Verwijderen element 7.6 Doorlopen van boom (bvb printen) 7.7 Balanceren van de boom Jan Lemeire Pag. 55 / 77

52 Recursie zonder recursie? Staartrecursie 1 recursieve oproep Kan ook geprogrammeerd worden met een while Boomrecursie Meer dan 1 recursieve oproep (vb fibonacci) Is minder evident om zonder recursie te programmeren, bij Mergesort zien we hoe dit kan. Aanpak zoals bij breadthfirst search. Jan Lemeire Pag. 56 / 77

53 p Toevoegen element public void add(t object){ Node<T> newnode = new Node<T>(object); if (root == null) root = newnode; else add(root, newnode); } private void add(node<t> current, Node<T> newnode){ if (comparator.compare(newnode.data, current.data) < 0){ // moet links komen if (current.left == null) current.left = newnode; else add(current.left, newnode); } else { // rechts if (current.right == null) current.right = newnode; else add(current.right, newnode); } } Jan Lemeire Pag. 57 / 77

54 Volgorde van toevoegen bepaalt boom! Wat als ik toevoeg in die volgordes? {k, l, g, i, x, q, r, a, e, f, c, z} {a, c, e, f, g, i, k, l, q, r, x, z} {i, z, q, l, k, f, e, g, c, x, a, r} Jan Lemeire Pag. 58 / 77

55 Hoofdstuk 5: Het productieproces Jan Lemeire Pag. 59 / 77

56

57 Optische computer? Maar Ook aan de VUB wordt er onderzoek gedaan naar een optische computer. Ik zie echter twee grote problemen waardoor deze waarschijnlijk nooit op de markt zal komen. Jan Lemeire Pag. 61 / 77

58 Probleem 1: Electrische computer heeft al een hele ontwikkelingsproces doorgemaakt Een alternatief moet wedijveren met de huidige processorkracht, de ontwikkeling van deze werd gefinancierd door de verkoop van minder krachtige processoren. Een alternatief heeft deze mogelijkheid niet Jan Lemeire Pag. 62 / 77

59 Aanverwant thema: het beste is niet de beste optie De eerste iphone of ipad die Apple op de markt bracht was niet het beste wat Apple te bieden had, maar ze was wel goed genoeg om de markt te veroveren. Zo kon Apple later met een verbeterde versie uitpakken (bvb betere camera) en weer langs de kassa passeren Jan Lemeire Pag. 63 / 77

60 Probleem 2 Geen goedkoop, eenvoudig productieproces lenzen zijn foutgevoelig, niet te miniaturiseren Electrische computer heeft dat wel, gebruik makend van micro-electronica Jan Lemeire Pag. 64 / 77

61 Wel: communicatienetwerken gaan via licht Glasvezel The world s cable map: Ook voor communicatie in computersystemen Jan Lemeire Pag. 65 / 77

62 De doorbraak van de computertechnologie Von Neuman met één van de eerste computers. Rechts de achterkant met de vacuümbuizen. De vacuümbuizen worden vervangen door chips Jan Lemeire Pag. 66 / 77

63 Informatica II: les 4 Componenten op een bordje met ingebakken connectielijnen

64 Waarmaken van Leibniz s droom (9) Artificiële intelligentie (8) Communicatie & internet (7) Operating system (6) Computatietheorie & Software (5) Efficiënt productieproces (4) Hardware architectuur Elektronica: (2) relais -schakeling, (3)geheugen (1) Digitaal & binair (0) Het idee Informatica deel III: technologie, historiek en economische aspecten

65 Alle componenten op een chip In plaats van losse componenten die geconnecteerd moeten worden, wordt er 1 plaatje gemaakt waarvan delen gemuteerd zijn tot geleiders of halfgeleiders. Zo worden er weerstanden, capaciteiten en transistoren ingebakken in het plaatje alsook de connectoren die de componenten connecteren. Er wordt gestart met een wafer van silicium (element Si atoomnummer 14). Vervolgens wordt er adhv mallen geëtst in het wafer en worden er andere elementen geïnjecteerd (dopering genoemd) zodat een geleider of halfgeleider ontstaat. Jan Lemeire Pag. 69 / 77

66 Zand bevat het wonderlijke Silicium, de basis van de chip Jan Lemeire Pag. 70 / 77

67 Silicium- wafer Etsen en doperen met geleidend en halfgeleidend materiaal Jan Lemeire Pag. 71 / 77

68 Etsen van wafer adhv mal Eenvoudig productieproces te miniaturiseren tot 10 nanometer Jan Lemeire Pag. 72 / 77

69 Op 40 jaar van tot transistoren op 20x20mm Jan Lemeire Pag. 73 / 77

70 Moederbord Jan Lemeire Pag. 74 / 77

71 Moederbord Jan Lemeire Pag. 75 / 77

72 Chip design Het aanmaken van een chip gebeurt volautomatisch vertrekkende van je ontwerp van het electronisch circuit. Voor het ontwerp bestaat modern software. Jan Lemeire Pag. 76 / 77

73 Miniaturisatie Breedte van de geleidende lijntjes op de chip

Waarmaken van Leibniz s droom

Waarmaken van Leibniz s droom Waarmaken van Leibniz s droom Artificiële intelligentie Communicatie & internet Operating system Economie Computatietheorie & Software Efficiënt productieproces Hardware architectuur Electronica: relais

Nadere informatie

Informatica. Deel II: les 5. productieproces & stacks/queues/linked lists. Jan Lemeire Informatica deel II februari mei 2014

Informatica. Deel II: les 5. productieproces & stacks/queues/linked lists. Jan Lemeire Informatica deel II februari mei 2014 Informatica Deel II: les 5 productieproces & stacks/queues/linked lists Jan Lemeire Informatica deel II februari mei 2014 Parallel Systems: Introduction Hoofdstuk 6: Het productieproces Jan Lemeire Pag.

Nadere informatie

Informatica 2e semester

Informatica 2e semester Informatica 2 e semester: les 8 Software & binaire bomen Jan Lemeire Informatica 2 e semester februari mei 2018 Informatica 2e semester: HOC 8 Vandaag 1. Overzicht datastructuren 2. Binaire bomen 3. Chips

Nadere informatie

Informatica. 2 e semester: les 7. computerarchitectuur chips lineaire datastructuren. Jan Lemeire Informatica 2 e semester februari mei 2016

Informatica. 2 e semester: les 7. computerarchitectuur chips lineaire datastructuren. Jan Lemeire Informatica 2 e semester februari mei 2016 Informatica 2 e semester: les 7 computerarchitectuur chips lineaire datastructuren Jan Lemeire Informatica 2 e semester februari mei 2016 Parallel Systems: Introduction Vandaag 1. Deel III/4: computerarchitectuur

Nadere informatie

Informatica 2e semester

Informatica 2e semester Informatica 2 e semester: les 7 computerarchitectuur chips lineaire datastructuren Jan Lemeire Informatica 2 e semester februari mei 2017 Vandaag 1. Deel III/4: computerarchitectuur 2. Stapel (hfst 3)

Nadere informatie

Informatica 2e semester

Informatica 2e semester Informatica 2 e semester: les 8 Software & binaire bomen Jan Lemeire Informatica 2 e semester februari mei 2019 Vandaag 1. Non-zero sum games 2. Leren 3. Deel III: slimme algoritmen versus intelligentie

Nadere informatie

Informatica. Deel II: les 10. Bomen. Jan Lemeire Informatica deel II februari mei Informatica II: les 9

Informatica. Deel II: les 10. Bomen. Jan Lemeire Informatica deel II februari mei Informatica II: les 9 Informatica Deel II: les 10 Bomen Jan Lemeire Informatica deel II februari mei 2012 Informatica II: les 9 De volgende revolutie Internet! Jan Lemeire Pag. 2 / 37 Technologie Netwerk laat toe dat computers

Nadere informatie

Informatica. Deel II: les 8. Software & binaire bomen. Jan Lemeire Informatica deel II&III februari mei Parallel Systems: Introduction

Informatica. Deel II: les 8. Software & binaire bomen. Jan Lemeire Informatica deel II&III februari mei Parallel Systems: Introduction Informatica Deel II: les 8 Software & binaire bomen Jan Lemeire Informatica deel II&III februari mei 2014 Parallel Systems: Introduction Waarmaken van Leibniz s droom (10) Artificiële intelligentie (9)

Nadere informatie

Informatica 2e semester

Informatica 2e semester Informatica 2 e semester: les 8 Software & binaire bomen Jan Lemeire Informatica 2 e semester februari mei 2017 Vandaag 1. Overzicht datastructuren 2. Binaire bomen 3. Theoretische informatica 4. Software

Nadere informatie

Informatica. Deel II: les 2. Leibniz - erven - digitaal. Jan Lemeire Informatica deel II februari mei Parallel Systems: Introduction

Informatica. Deel II: les 2. Leibniz - erven - digitaal. Jan Lemeire Informatica deel II februari mei Parallel Systems: Introduction Informatica Deel II: les 2 Leibniz - erven - digitaal Jan Lemeire Informatica deel II februari mei 2013 Parallel Systems: Introduction Leibniz 1646 1716 Jan Lemeire Pag. 2 / 48 Calculemus! Berechnen wir!

Nadere informatie

Informatica. les 6. Slimme (deel II: hoofdstuk 5) versus intelligente (deel III: hoofdstuk 9) algoritmen

Informatica. les 6. Slimme (deel II: hoofdstuk 5) versus intelligente (deel III: hoofdstuk 9) algoritmen Informatica les 6 Slimme (deel II: hoofdstuk 5) versus intelligente (deel III: hoofdstuk 9) algoritmen Jan Lemeire Informatica 2 e semester februari mei 2016 1 Is er een machine die even slim of zelfs

Nadere informatie

Informatica 2e semester

Informatica 2e semester Informatica 2 e semester: les 5 computerarchitectuur chips lineaire datastructuren Jan Lemeire Informatica 2 e semester februari mei 2018 Vandaag 1. Deel III/4: computerarchitectuur 2. Array-algoritmen

Nadere informatie

Informatica 2e semester

Informatica 2e semester Informatica 2 e semester: les 6 Slimme (deel II: hoofdstuk 5) versus intelligente (deel III: hoofdstuk 9) algoritmen Jan Lemeire Informatica 2 e semester februari mei 2017 1 Is er een machine die even

Nadere informatie

Informatica 2e semester

Informatica 2e semester Informatica 2 e semester: les 5 computerarchitectuur chips lineaire datastructuren Jan Lemeire Informatica 2 e semester februari mei 2019 Vandaag 1. Array-algoritmen vervolg (hfst 2) 2. Stapel (hfst 3)

Nadere informatie

Informatica. 2 e semester: les 8. Software & binaire bomen. Jan Lemeire Informatica 2 e semester februari mei Parallel Systems: Introduction

Informatica. 2 e semester: les 8. Software & binaire bomen. Jan Lemeire Informatica 2 e semester februari mei Parallel Systems: Introduction Informatica 2 e semester: les 8 Software & binaire bomen Jan Lemeire Informatica 2 e semester februari mei 2016 Parallel Systems: Introduction Leibniz droom De Calculus ratiocinator Een logisch denkend

Nadere informatie

Elementary Data Structures 3

Elementary Data Structures 3 Elementary Data Structures 3 Ferd van Odenhoven Fontys Hogeschool voor Techniek en Logistiek Venlo Software Engineering 29 september 2014 ODE/FHTBM Elementary Data Structures 3 29 september 2014 1/14 Meer

Nadere informatie

Hoofdstuk 6. Geordende binaire bomen

Hoofdstuk 6. Geordende binaire bomen Hoofdstuk 6 Geordende binaire bomen Eerder bespraken we hoe gelinkte lijsten een zeer flexibele structuur geven. Het zoeken in een gelinkte lijst was echter niet optimaal, aangezien je enkel de lijst van

Nadere informatie

ALGORITMIEK: answers exercise class 7

ALGORITMIEK: answers exercise class 7 Problem 1. See slides 2 4 of lecture 8. Problem 2. See slides 4 6 of lecture 8. ALGORITMIEK: answers exercise class 7 Problem 5. a. Als we twee negatieve (< 0) getallen bij elkaar optellen is het antwoord

Nadere informatie

Waarmaken van Leibniz s droom

Waarmaken van Leibniz s droom Waarmaken van Leibniz s droom Artificiële intelligentie Communicatie & internet Operating system Economie Computatietheorie & Software Efficiënt productieproces Hardware architectuur Electronica: relais

Nadere informatie

Informatica 2e semester

Informatica 2e semester Informatica 2 e semester: les 7 Slimme (deel II: hoofdstuk 5) versus intelligente (deel III: hoofdstuk 9) algoritmen Jan Lemeire Informatica 2 e semester februari mei 2018 1 Is er een machine die even

Nadere informatie

Java Programma structuur

Java Programma structuur Java Programma structuur public class Bla // div. statements public static void main(string argv[]) // meer spul Voortgezet Prog. voor KI, week 4:11 november 2002 1 Lijsten Voorbeelden 2, 3, 5, 7, 13 Jan,

Nadere informatie

Waarmaken van Leibniz s droom

Waarmaken van Leibniz s droom Waarmaken van Leibniz s droom Artificiële intelligentie Communicatie & internet Operating system Economie Computatietheorie & Software Efficiënt productieproces Hardware architectuur Electronica: relais

Nadere informatie

public boolean equaldates() post: returns true iff there if the list contains at least two BirthDay objects with the same daynumber

public 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 informatie

Informatica 2e semester

Informatica 2e semester Informatica 2 e semester: les 7 Slimme (deel II: hoofdstuk 5) versus intelligente (deel III: hoofdstuk 9) algoritmen Jan Lemeire Informatica 2 e semester februari mei 2019 1 Is er een machine die even

Nadere informatie

Waarmaken van Leibniz s droom

Waarmaken van Leibniz s droom Waarmaken van Leibniz s droom Artificiële intelligentie Communicatie & internet Operating system Economie Computatietheorie & Software Efficiënt productieproces Hardware architectuur Electronica: relais

Nadere informatie

Modelleren en Programmeren

Modelleren 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 informatie

Informatica. Deel II: les 1. Java versus Python. Jan Lemeire Informatica deel II februari mei 2015. Parallel Systems: Introduction

Informatica. Deel II: les 1. Java versus Python. Jan Lemeire Informatica deel II februari mei 2015. Parallel Systems: Introduction Informatica Deel II: les 1 Java versus Python Jan Lemeire Informatica deel II februari mei 2015 Parallel Systems: Introduction Arabidopsis (zandraket) Arabidopsis (zandraket) MMIQQA Multimodal Microscopic

Nadere informatie

Objectgeorïenteerd werken is gebaseerd op de objecten die door het systeem gemanipuleerd worden.

Objectgeorïenteerd werken is gebaseerd op de objecten die door het systeem gemanipuleerd worden. Herhaling Objectgeorïenteerd werken is gebaseerd op de objecten die door het systeem gemanipuleerd worden. De basisbouwsteen is het object; een geïntegreerde eenheid van data en operaties werkend op deze

Nadere informatie

Python (gem=1,86) Java (gem=1,57) Enquete cursus informatica 1e bachelors oefeningen beter aansluiten bij project?

Python (gem=1,86) Java (gem=1,57) Enquete cursus informatica 1e bachelors oefeningen beter aansluiten bij project? Enquete cursus informatica 1e bachelors 216-217 Python (gem=1,86) Java (gem=1,7) 3 3 2 2 1 1 3 2 1-1 -2-3 3 2 1-1 -2-3 2 Combinatie python va (gem=1,6) 1 Hoe is de overgang python2va 1 1 3 2 1-1 -2-3 3

Nadere informatie

Informatica. Deel II: les 1. Java versus Python. Jan Lemeire Informatica deel II februari mei 2014. Parallel Systems: Introduction

Informatica. Deel II: les 1. Java versus Python. Jan Lemeire Informatica deel II februari mei 2014. Parallel Systems: Introduction Informatica Deel II: les 1 Java versus Python Jan Lemeire Informatica deel II februari mei 2014 Parallel Systems: Introduction Arabidopsis (zandraket) Arabidopsis (zandraket) MMIQQA Multimodal Microscopic

Nadere informatie

Tentamen Objectgeorienteerd Programmeren

Tentamen Objectgeorienteerd Programmeren Tentamen Objectgeorienteerd Programmeren 5082IMOP6Y maandag 16 november 2015 13:00 15:00 Schrijf je naam en studentnummer op de regel hieronder. Sla deze pagina niet om tot de surveillant vertelt dat het

Nadere informatie

Modelleren en Programmeren

Modelleren en Programmeren Modelleren en Programmeren Jeroen Bransen 6 december 2013 Terugblik Programma en geheugen Opdrachten Variabelen Methoden Objecten Klasse Programma en geheugen Opdrachten Variabelen zijn gegroepeerd in

Nadere informatie

Informatica 2e semester

Informatica 2e semester Informatica 2 e semester: les 11 Hashing & Internet Slot Jan Lemeire Informatica 2 e semester februari mei 2018 Vandaag 1. Hashing 2. Internet (deel II) 3. Highscore server 4. Examen Hoofdstuk 9 Hashing

Nadere informatie

Informatica. Deel II: les 3. Electronica Arrays. Jan Lemeire Informatica deel II februari mei Parallel Systems: Introduction

Informatica. Deel II: les 3. Electronica Arrays. Jan Lemeire Informatica deel II februari mei Parallel Systems: Introduction Informatica Deel II: les 3 Electronica Arrays Jan Lemeire Informatica deel II februari mei 2014 Parallel Systems: Introduction Leibniz droom De Calculus ratiocinator Een logisch denkend apparaat 1646 1716

Nadere informatie

Informatica. Deel II&III: les 2. Leibniz - erven - digitaal. Jan Lemeire Informatica deel II&III februari mei Parallel Systems: Introduction

Informatica. Deel II&III: les 2. Leibniz - erven - digitaal. Jan Lemeire Informatica deel II&III februari mei Parallel Systems: Introduction Informatica Deel II&III: les 2 Leibniz - erven - digitaal Jan Lemeire Informatica deel II&III februari mei 2015 Parallel Systems: Introduction Leibniz 1646 1716 Informatica II: les 2 Jan Lemeire Pag. 2

Nadere informatie

Een gelinkte lijst in C#

Een gelinkte lijst in C# Een gelinkte lijst in C# In deze tutorial ga demonstreren hoe je een gelinkte lijst kan opstellen in C#. We gaan een klasse schrijven, die een gelijkaardige functionaliteit heeft als een ArrayList, namelijk

Nadere informatie

Tree traversal. Bomen zijn overal. Ferd van Odenhoven. 15 november 2011

Tree traversal. Bomen zijn overal. Ferd van Odenhoven. 15 november 2011 15 november 2011 Tree traversal Ferd van Odenhoven Fontys Hogeschool voor Techniek en Logistiek Venlo Software Engineering 15 november 2011 ODE/FHTBM Tree traversal 15 november 2011 1/22 1 ODE/FHTBM Tree

Nadere informatie

Zelftest Inleiding Programmeren

Zelftest 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 informatie

Dergelijke functionaliteit kunnen we zelf ook aan eigen code toevoegen.

Dergelijke 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 informatie

Informatica. Deel II: les 9 OS & AVL. Jan Lemeire. Informatica deel II. februari mei Informatica II: les 9

Informatica. Deel II: les 9 OS & AVL. Jan Lemeire. Informatica deel II. februari mei Informatica II: les 9 Informatica Deel II: les 9 OS & AVL Jan Lemeire Informatica deel II februari mei 2014 Hoofdstuk 8: Operating Systems Jan Lemeire Pag. 2 / 64 Bedrijfscomputers Initieel waren er voornamelijk bedrijfscomputers

Nadere informatie

Inleiding Programmeren 2

Inleiding 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 informatie

Modelleren en Programmeren

Modelleren 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 informatie

Tentamen in2705 Software Engineering

Tentamen in2705 Software Engineering Tentamen in2705 Software Engineering Voorbeeld (bijna tweemaal te groot) U mag meenemen naar dit tentamen: Lethbridge, afdrukken PPT slides, afdrukken handouts. 1. De TU wil een nieuw systeem ontwikkelen

Nadere informatie

Ingebouwde klassen & methodes

Ingebouwde klassen & methodes Ingebouwde klassen & methodes Statische methodes Methodes die bij een klasse horen ipv. bij een object public class Docent { public static Docent departementshoofd() { return new Docent("Jan Ivens"); private

Nadere informatie

Universiteit van Amsterdam FNWI. Voorbeeld van tussentoets Inleiding programmeren

Universiteit van Amsterdam FNWI. Voorbeeld van tussentoets Inleiding programmeren Universiteit van Amsterdam FNWI Voorbeeld van tussentoets Inleiding programmeren Opgave 1: Wat is de uitvoer van dit programma? public class Opgave { static int i = 0 ; static int j = 1 ; int i = 1 ; int

Nadere informatie

Tentamen Objectgeorienteerd Programmeren TI februari Afdeling ST Faculteit EWI TU Delft

Tentamen 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 informatie

Informatica. les 7. Slimme (deel II: hoofdstuk 9) versus intelligente (deel III: hoofdstuk 10) algoritmen

Informatica. les 7. Slimme (deel II: hoofdstuk 9) versus intelligente (deel III: hoofdstuk 10) algoritmen Informatica les 7 Slimme (deel II: hoofdstuk 9) versus intelligente (deel III: hoofdstuk 10) algoritmen Jan Lemeire Informatica deel II & III februari mei 2014 Parallel Systems: Introduction Is er een

Nadere informatie

Informatica 2e semester

Informatica 2e semester Informatica 2 e semester: les 11 Hashing & Internet Slot Jan Lemeire Informatica 2 e semester februari mei 2019 Vandaag 1. Hashing 2. Internet (deel II) 3. Examen Hoofdstuk 9 Hashing Performantie datastructuren

Nadere informatie

Informatica. Deel II&III: les 4. geheugen set, stacks & queues - interfaces. Jan Lemeire Informatica deel II&III februari mei 2015

Informatica. Deel II&III: les 4. geheugen set, stacks & queues - interfaces. Jan Lemeire Informatica deel II&III februari mei 2015 Informatica Deel II&III: les 4 geheugen set, stacks & queues - interfaces Jan Lemeire Informatica deel II&III februari mei 2015 Parallel Systems: Introduction Waarmaken van Leibniz s droom (9) Artificiële

Nadere informatie

Zelftest Programmeren in Java

Zelftest 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 informatie

Programmeren 1 23 januari 2013 Prof. T. Schrijvers

Programmeren 1 23 januari 2013 Prof. T. Schrijvers Programmeren 1 23 januari 2013 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 informatie

S e v e n P h o t o s f o r O A S E. K r i j n d e K o n i n g

S e v e n P h o t o s f o r O A S E. K r i j n d e K o n i n g S e v e n P h o t o s f o r O A S E K r i j n d e K o n i n g Even with the most fundamental of truths, we can have big questions. And especially truths that at first sight are concrete, tangible and proven

Nadere informatie

Contents. Introduction Problem Definition The Application Co-operation operation and User friendliness Design Implementation

Contents. Introduction Problem Definition The Application Co-operation operation and User friendliness Design Implementation TeleBank Contents Introduction Problem Definition The Application Co-operation operation and User friendliness Design Implementation Introduction - TeleBank Automatic bank services Initiates a Dialog with

Nadere informatie

Kleine cursus PHP5. Auteur: Raymond Moesker

Kleine cursus PHP5. Auteur: Raymond Moesker Kleine cursus PHP5 Auteur: Raymond Moesker Kleine cursus PHP PHP is platform en CPU onafhankelijk, open source, snel, heeft een grote userbase, het is object georiënteerd, het wordt omarmd door grote bedrijven

Nadere informatie

Datastructuren en Algoritmen voor CKI

Datastructuren en Algoritmen voor CKI Ω /texmf/tex/latex/uubeamer.sty-h@@k 00 /texmf/tex/latex/uubeamer.sty Datastructuren en Algoritmen voor CKI Vincent van Oostrom Clemens Grabmayer Afdeling Wijsbegeerte Hoorcollege 5 16 februari 2009 Waar

Nadere informatie

Four-card problem. Input

Four-card problem. Input Four-card problem The four-card problem (also known as the Wason selection task) is a logic puzzle devised by Peter Cathcart Wason in 1966. It is one of the most famous tasks in the study of deductive

Nadere informatie

Introductie in flowcharts

Introductie in flowcharts Introductie in flowcharts Flow Charts Een flow chart kan gebruikt worden om: Processen definieren en analyseren. Een beeld vormen van een proces voor analyse, discussie of communicatie. Het definieren,

Nadere informatie

Informatica. Deel II & III: les 5. Basis- & slimme algoritmen. Jan Lemeire Informatica deel II & III februari mei Parallel Systems: Introduction

Informatica. Deel II & III: les 5. Basis- & slimme algoritmen. Jan Lemeire Informatica deel II & III februari mei Parallel Systems: Introduction Informatica Deel II & III: les 5 Basis- & slimme algoritmen Jan Lemeire Informatica deel II & III februari mei 2016 Parallel Systems: Introduction Oefening Iets met een functie public class IetsMetFunctie

Nadere informatie

Kwis (3) class X { public void a() { System.out.println("x"); public static void main(string[] args) { X x = new X();

Kwis (3) class X { public void a() { System.out.println(x); public static void main(string[] args) { X x = new X(); Kwis (3) class X { public void a() { System.out.println("x"); class Y extends X { public void a() { System.out.println("y"); class Z extends Y { public void a() { System.out.println("z"); public static

Nadere informatie

Modelleren en Programmeren

Modelleren en Programmeren Modelleren en Programmeren Jeroen Bransen 27 november 2015 Recursie Objecten Constructors Aanpassen variabelen this keyword Recursie Recursie Recursieve functie roept zichzelf (direct of indirect) aan

Nadere informatie

Modelleren en Programmeren

Modelleren 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 informatie

Genetische algoritmen in Java met JGAP

Genetische algoritmen in Java met JGAP Genetische algoritmen in Java met JGAP Inleiding JGAP, uitgesproken als "jee-gep", is een framework voor het implementeren van genetische algoritmen en het gebruik ervan in Java. Genetische algoritmen

Nadere informatie

Lessen Java: Reeks pag. 1

Lessen Java: Reeks pag. 1 Lessen Java: Reeks 2 1-3-2016 pag. 1 Primitieve types type grootte waardes byte 8 bits 128, 127 short 16 bits 32768, 32767 int 32 bits 2 31, 2 31 1 long 64 bits 2 63, 2 63 1 type grootte waardes float

Nadere informatie

Intelligentie: hoe gaan we hier intelligent mee om in de neuropsychologie?

Intelligentie: hoe gaan we hier intelligent mee om in de neuropsychologie? Intelligentie: hoe gaan we hier intelligent mee om in de neuropsychologie? een kritische noot... Martine J.E. van Zandvoort Wat kunt u verwachten? In de MEDIA. Wat betekent intelligentie eigenlijk? Historisch

Nadere informatie

Tree traversal. Ferd van Odenhoven. 15 november Fontys Hogeschool voor Techniek en Logistiek Venlo Software Engineering. Doorlopen van bomen

Tree traversal. Ferd van Odenhoven. 15 november Fontys Hogeschool voor Techniek en Logistiek Venlo Software Engineering. Doorlopen van bomen Tree traversal Ferd van Odenhoven Fontys Hogeschool voor Techniek en Logistiek Venlo Software Engineering 15 november 2011 ODE/FHTBM Tree traversal 15 november 2011 1/22 1 ODE/FHTBM Tree traversal 15 november

Nadere informatie

8+ 60 MIN Alleen te spelen in combinatie met het RIFUGIO basisspel. Only to be played in combination with the RIFUGIO basicgame.

8+ 60 MIN Alleen te spelen in combinatie met het RIFUGIO basisspel. Only to be played in combination with the RIFUGIO basicgame. 8+ 60 MIN. 2-5 Alleen te spelen in combinatie met het RIFUGIO basisspel. Only to be played in combination with the RIFUGIO basicgame. HELICOPTER SPEL VOORBEREIDING: Doe alles precies hetzelfde als bij

Nadere informatie

Informatica. Deel II&III: les 8. Software & binaire bomen. Jan Lemeire Informatica deel II&III februari mei Parallel Systems: Introduction

Informatica. Deel II&III: les 8. Software & binaire bomen. Jan Lemeire Informatica deel II&III februari mei Parallel Systems: Introduction Informatica Deel II&III: les 8 Software & binaire bomen Jan Lemeire Informatica deel II&III februari mei 2015 Parallel Systems: Introduction Leibniz droom De Calculus ratiocinator Een logisch denkend apparaat

Nadere informatie

public boolean egualdates() post: returns true i f f there i f the l i s t contains at least two BirthDay objects with the same daynumber

public boolean egualdates() post: returns true i f f there i f the l i s t 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 informatie

MyDHL+ Van Non-Corporate naar Corporate

MyDHL+ Van Non-Corporate naar Corporate MyDHL+ Van Non-Corporate naar Corporate Van Non-Corporate naar Corporate In MyDHL+ is het mogelijk om meerdere gebruikers aan uw set-up toe te voegen. Wanneer er bijvoorbeeld meerdere collega s van dezelfde

Nadere informatie

Knowledgeable Referenceable Personable Accountable Scalable

Knowledgeable Referenceable Personable Accountable Scalable Knowledgeable Referenceable Personable Accountable Scalable 1 WebForms en JavaBeans bij Essent Energie OGH presentatie 3 juli 2003 2 Agenda Inleiding Eenvoudige Java Bean in Web Forms Demo Meer complexe

Nadere informatie

Firewall van de Speedtouch 789wl volledig uitschakelen?

Firewall van de Speedtouch 789wl volledig uitschakelen? Firewall van de Speedtouch 789wl volledig uitschakelen? De firewall van de Speedtouch 789 (wl) kan niet volledig uitgeschakeld worden via de Web interface: De firewall blijft namelijk op stateful staan

Nadere informatie

Informatica 2e semester

Informatica 2e semester Informatica Les 6 Basis- & slimme algoritmen Jan Lemeire Informatica 2 e semester februari mei 2019 Vandaag 1. Iets met functie 2. Interfaces en abstracte klasses 3. Newton s algoritme 4. Oefening op interfaces

Nadere informatie

Preschool Kindergarten

Preschool Kindergarten Preschool Kindergarten Objectives Students will recognize the values of numerals 1 to 10. Students will use objects to solve addition problems with sums from 1 to 10. Materials Needed Large number cards

Nadere informatie

Inleiding Programmeren 2

Inleiding 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 informatie

Informatica. 2 e semester: les 9. OS & Sorteren. Jan Lemeire Informatica 2 e semester februari mei Informatica II: les 9

Informatica. 2 e semester: les 9. OS & Sorteren. Jan Lemeire Informatica 2 e semester februari mei Informatica II: les 9 Informatica 2 e semester: les 9 OS & Sorteren Jan Lemeire Informatica 2 e semester februari mei 2016 Vandaag 1. Besturingssystemen 2. Het gebruik van static 3. Binaire bomen (vervolg) 4. Sorteren Hoofdstuk

Nadere informatie

Informatica 2e semester

Informatica 2e semester Informatica Les 6 Basis- & slimme algoritmen Jan Lemeire Informatica 2 e semester februari mei 2018 Vandaag 1. Iets met functie 2. Interfaces en abstracte klasses 3. Newton s algoritme 4. Oefening op interfaces

Nadere informatie

Scala. Korte introductie. Sylvia Stuurman

Scala. Korte introductie. Sylvia Stuurman Korte introductie Sylvia Stuurman Wat is er zo bijzonder aan? Schaalbaar Objectgeoriënteerd (handiger dan Java!) Functioneel Scripts schrijven Gecompileerd: Java bytecode Pagina 2 voor scripts Pagina 3

Nadere informatie

Informatica 2e semester

Informatica 2e semester Informatica 2 e semester: les 10 Internet & sorteren Jan Lemeire Informatica 2 e semester februari mei 2018 Vandaag 1. Operating Systems (slot) 2. Sorteren (2e deel) 3. Internet: geschiedenis 4. Internet:

Nadere informatie

Jeroen uit. Extra informatie. Voor de lunch. Arduino zo aangesloten om mijn code te laten werken. (versie voor lunch) (code voor de lunch)

Jeroen uit. Extra informatie. Voor de lunch. Arduino zo aangesloten om mijn code te laten werken. (versie voor lunch) (code voor de lunch) We zijn weer aan dag drie al beland vandaag weer een dag CLE aangezien ik zag dat ik het vorige blog was vergeten CLE staat voor Contextiual Learning Enviroment ( weet je dat ook weer ) Maar ja zoals ik

Nadere informatie

Tentamen Programmeren in C (EE1400)

Tentamen Programmeren in C (EE1400) TU Delft Tentamen Programmeren in C (EE1400) 5 april 2012, 9.00 12.00 Faculteit EWI - Zet op elk antwoordblad je naam en studienummer. - Beantwoord alle vragen zo nauwkeurig mogelijk. - Wanneer C code

Nadere informatie

Engels op Niveau A2 Workshops Woordkennis 1

Engels op Niveau A2 Workshops Woordkennis 1 A2 Workshops Woordkennis 1 A2 Workshops Woordkennis 1 A2 Woordkennis 1 Bestuderen Hoe leer je 2000 woorden? Als je een nieuwe taal wilt spreken en schrijven, heb je vooral veel nieuwe woorden nodig. Je

Nadere informatie

Javascript oefenblad 1

Javascript 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 informatie

NSPYRE LEGO MINDSTORMS UITDAGING (JAVA) INLEIDING. DOEL: SIMULATOR:

NSPYRE LEGO MINDSTORMS UITDAGING (JAVA) INLEIDING. DOEL: SIMULATOR: NSPYRE LEGO MINDSTORMS UITDAGING (JAVA) INLEIDING. Door mee te doen aan deze uitdaging kan je Nspyre laten zien wat je kan. Schrijf jij de beste oplossing dan is deze lego mindstorms nxt 2.0 set voor jou.

Nadere informatie

Tentamen 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 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 informatie

NAAM: Programmeren 1 Examen 29/08/2012

NAAM: 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 informatie

Addendum bij hoofdstuk 5 Generieke implementatie van de zoekalgoritmen

Addendum bij hoofdstuk 5 Generieke implementatie van de zoekalgoritmen Addendum bij hoofdstuk 5 Generieke implementatie van de zoekalgoritmen De implementatie wordt kort besproken in 5.2.6 1. Programmatie Zoekalgoritme Definitie van boom: we hebben geen binaire boom met exact

Nadere informatie

Informatica 2e semester

Informatica 2e semester Informatica Les 5 Basis- & slimme algoritmen Jan Lemeire Informatica 2 e semester februari mei 2017 Vandaag 1. Iets met functie 2. Interfaces en abstracte klasses 3. Newton s algoritme 4. Oefening op interfaces

Nadere informatie

IMP Uitwerking week 13

IMP 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 informatie

Overerving & Polymorfisme

Overerving & Polymorfisme Overerving & Polymorfisme Overerving Sommige klassen zijn speciaal geval van andere klasse Docent is een speciaal geval van werknemer, dwz. elke docent is ook werknemer Functionaliteit van docent = functionaliteit

Nadere informatie

The genesis of the game is unclear. Possibly, dominoes originates from China and the stones were brought here by Marco Polo, but this is uncertain.

The genesis of the game is unclear. Possibly, dominoes originates from China and the stones were brought here by Marco Polo, but this is uncertain. Domino tiles Dominoes is a game played with rectangular domino 'tiles'. Today the tiles are often made of plastic or wood, but in the past, they were made of real stone or ivory. They have a rectangle

Nadere informatie

Programmeermethoden. Recursie. Walter Kosters. week 11: november kosterswa/pm/

Programmeermethoden. 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 informatie

Quick start guide. Powerbank MI Mah. Follow Fast All rights reserved. Page 1

Quick start guide. Powerbank MI Mah. Follow Fast All rights reserved. Page 1 Quick start guide Powerbank MI 16.000 Mah Follow Fast 2016 - All rights reserved. Page 1 ENGLISH The Mi 16000 Power Bank is a very good backup option for those on the move. It can keep you going for days

Nadere informatie

Informatica 2e semester

Informatica 2e semester Informatica Les 3 Elektronica Interfaces - Overschrijven Jan Lemeire Informatica 2 e semester februari mei 2018 Informatica 2e semester: HOC 3 Vandaag 1. Deel III: hoofdstuk 1 binair rekenen 2. Deel III:

Nadere informatie

Programmeermethoden. Recursie. week 11: november kosterswa/pm/

Programmeermethoden. 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 informatie

Planning. 1. Mini College. 2. Introductiecursus Imperatief Programmeren. 3. Crash and Compile (vanaf 17:00 uur)

Planning. 1. Mini College. 2. Introductiecursus Imperatief Programmeren. 3. Crash and Compile (vanaf 17:00 uur) Planning 1. Mini College 2. Introductiecursus Imperatief Programmeren 3. Crash and Compile (vanaf 17:00 uur) Geschiedinis van de Codemonkeys imperatief programmeren voor beginners Geschiedenis van de Codemonkey

Nadere informatie

Y.S. Lubbers en W. Witvoet

Y.S. Lubbers en W. Witvoet WEBDESIGN Eigen Site Evaluatie door: Y.S. Lubbers en W. Witvoet 1 Summary Summary Prefix 1. Content en structuur gescheiden houden 2. Grammaticaal correcte en beschrijvende markup 3. Kopregels 4. Client-

Nadere informatie

Hoofdstuk 3. Week 5: Sorteren. 3.1 Inleiding

Hoofdstuk 3. Week 5: Sorteren. 3.1 Inleiding Hoofdstuk 3 Week 5: Sorteren 3.1 Inleiding Zoals al bleek in college 1 kunnen zoekalgoritmen veel sneller worden uitgevoerd, indien we weten dat de elementen in de lijst, waarin wordt gezocht, geordend

Nadere informatie

Programmeren in C++ Efficiënte zoekfunctie in een boek

Programmeren in C++ Efficiënte zoekfunctie in een boek Examen Software Ontwikkeling I 2e Bachelor Informatica Faculteit Wetenschappen Academiejaar 2010-2011 21 januari, 2011 **BELANGRIJK** 1. Lees eerst de volledige opgave (inclusief de hints/opmerkingen)!

Nadere informatie