Hutscodering. De techniek: illustratie. een tabel met 7 plaatsen, genummerd van 0 tot en met 6.
|
|
- Ludo Brander
- 4 jaren geleden
- Aantal bezoeken:
Transcriptie
1 Hutscodering die leeg kunnen zijn, tabel T: abstract stockage middel met plaatsen elementen vd. vorm (K, I) K is de sleutel (of key) en I bijhorende informatie creatie van een lege tabel; een nieuw element aan een tabel toevoegen; een element verwijderen uit een tabel; een element opzoeken in de tabel (en eventueel de bijhorende I wijzigen); een lijst maken van alle elementen in de tabel, eventueel gesorteerd. Verschillende organisaties: een array, een lineaire lijst of een boom. Welke: afhankelijk van welke vd. operaties het meeste uitgevoerd worden Bijkomende manier : hashing + bijzonder geschikt indien toevoegen en opzoeken meest voorkomende operaties. + het maken van een gesorteerde lijst : heel wat moeilijker. een tabel met 7 plaatsen, genummerd van 0 tot en met een lege tabel met zeven plaatsen Plaats waar een element toegevoegd wordt: berekenen uit de sleutel: sleutelwaarde (= de index bij letter) delen door de lengte van de tabel (7) en de restwaarde gebruiken als nummer van de plaats in de tabel. + element J 10 berekening: plaats 3 (10 % 7) + indien plaats 3 nog leeg is, element J 10 op die plaats toevoegen + op dezelfde manier : B 2 op plaats 2 toevoegen + het element S 19 op plaats 5 (19 % 7) B 2 J 10 S 19 na toevoegen van drie elementen De techniek: illustratie elementen met een sleutel K gelijk aan de letters van het alfabet met een index deze index : de positie van de letter in het alfabet bijvoorbeeld A 1, B 2, C 3, R 18 en Z 26. voor de eenvoud: geen bijhorende informatie I in element opgenomen deze elementen opslaan: een array van 26 plaatsen voorzien, voor elk mogelijk element één plaats echter mogelijk: het aantal reëel voorkomende elementen is veel kleiner dan het aantal mogelijke waarden voor de sleutel een enorme geheugenverspilling interessant: een tabel voorzien met slechts een beperkt aantal plaatsen, d.w.z. kleiner dan het totaal aantal mogelijke waarden voor K algemeen: plaats berekenen uit sleutelwaarde (L n ) m.b.v. hash functie: h(l n ) = n % 7. goede hash functie: sleutels zo uniform mogelijk verdelen over alle mogelijke plaatsen van de tabel. Verder toevoegen van elementen N 14, W 23 en X 24 problemen Toevoegen van element N 14 N 14 B 2 J 10 S 19 geen probleem: plaats 0 is leeg volgende element met sleutel W 23 : plaats h(w 23 )23 % 7 = 2 op plaats 2 : reeds een element aanwezig, namelijk B 2 element W 23 kan dus op deze plaats niet meer toegevoegd worden botsing: de twee sleutels B 2 en W 23 komen op hetzelfde hash adres : 2 = h(b 2 ) = h(w 23 ).
2 + mogelijke oplossing: naar lege plaatsen met lagere nummers gaan zoeken, te vertrekken vanaf de plaats waar de botsing plaats vond + open addressing: elementen toevoegen op lege plaatsen van de tabel + W 23 : lege plaats op index 1 (vertrekkend vanaf 2 ) element W 23 : niet op plaats 2 N 14 W 23 B 2 J 10 S 19 plaats 1 is nog leeg + element met sleutel X 24 : hash adres 3, op deze plaats reeds een element + ook al elementen in alle plaatsen met lagere nummers + er wordt dan verder gezocht vanaf het laatste element in de tabel + dus, X 24 kan toegevoegd worden op plaats X 24 : niet op 3, 2, 1, 0 N 14 W 23 B 2 J 10 S 19 X 24 uiteindelijk op plaats 6 Er zijn verschillende politieken om een botsing op te lossen. linear probing: de peil sequentie van sleutel L n wordt gevormd door af te tellen vanaf het hash adres h(l n ) en na 0 wordt verdergegaan met het laatste element van de tabel. dus met een probe decrement van 1, omdat voor het vinden van de volgende peillocatie 1 afgetrokken wordt van de actuele peillocatie omdat de elementen op lege plaatsen toegevoegd worden, spreekt men van open addressing with linear probing wanneer de tabel bijna vol is, resulteert deze methode in een slechte performantie + niet-lineaire peilmethode gebruiken om voor verschillende sleutels L n verschillende probe decrements te berekenen + dubbel hashing: de probe decrement wordt berekend met behulp van een hash functie (p(l n )) de probe sequentie: de plaatsen die onderzocht worden wanneer een nieuw element met sleutel L n toegevoegd wordt elk van deze plaatsen wordt gepeild om te bepalen of ze nog leeg is de eerste plaats in deze sequentie is het hash adres, h(l n ) de volgende plaatsen worden bepaald door de collision resolution policy in bovenstaand voorbeeld start de peil-sequentie voor de sleutel W 23 op plaats 2, gevolgd door de plaatsen 1, 0, 6, 5, 4 en 3 Een peil-sequentie is zodanig georganiseerd dat elke plaats in de tabel precies eenmaal onderzocht wordt. steeds een lege plaats vinden bij elke peil-sequentie: een volle tabel gedefinieerd als een tabel met exact één vrije plaats. op die manier zal dus steeds tijdens het aflopen van de peil-sequentie een lege plaats gevonden worden niet nodig om tijdens het aflopen het aantal bezochte elementen te tellen om te kunnen bepalen wanneer er kan gestopt worden met zoeken mogelijke methode berekenen decrement: het quotiënt nemen van deling van n door 7; wanneer dit quotiënt echter gelijk is aan nul, wordt een decrement gelijk aan 1 genomen. p(l n ) = max(1, n/7) voorbeelden: W 23 : max(1, 23/7) of 3 B 2 : max(1, 2/7) of 1 + elementen J 10, B 2, S 19 en N 14 toevoegen aan een lege tabel + eerste botsing bij het toevoegen van element W 23 : h(w 23 ) = 2, dus toevoegen op plaats 2; deze plaats is echter reeds bezet. + probe decrement berekenen: p(w 23 ) = 3, dus wordt naar plaats (2-3) 6 gekeken: deze plaats is nog vrij, zodat het element kan toegevoegd worden hash adres: h(w 23 ) = 2 N 14 B 2 J 10 S 19 W 23 probe decrement p(w 23 ) = 3
3 + element X 24 toevoegen : plaats 3 (h(x 24 )) is bezet + probe decrement p(x 24 ) = 3; plaats (3-3) 0 is ook bezet + verder kijken naar plaats (0-3) 4: hier kan het element toegevoegd worden h(x 24 ) = 3: niet leeg N 14 B 2 J 10 X 24 S 19 W 23 p(x 24 ) = 3, dus 0 en dan 4 voordeel van dubbel hashing: + bij een botsing van twee sleutels op een initieel hash adres zijn de peil sequenties voor deze twee sleutels meestal verschillend, omdat een verschillende probe decrement gebruikt wordt + bijvoorbeeld de sleutels J 10 en X 24 geven het zelfde hash adres, namelijk 3 + p(j 10 ) = 1 en p(x 24 ) = 3 : de twee peil sequenties zijn verschillend + effect: meestal zal sneller een lege plaats gevonden worden dan wanneer bij een botsing dezelfde peil sequenties gebruikt worden Parameter: tabellengte botsing: bij het toevoegen van twee verschillende sleutels, K en L, aan de tabel, hebben deze beide sleutels hetzelfde hash adres: h(k) = h(l). goede performantie: niet veel botsingen bij implementatie van hash techniek: enkele parameters goed kiezen + eerste parameter : de lengte van de tabel. + de tabel moet zeker groter zijn dan het te verwachte aantal op te slaan elementen + load factor λ van een hash tabel met lengte M en N plaatsen bezet: λ = N/M. + hoe kleiner de load factor, hoe minder kans op botsingen. + de lengte van de tabel: dikwijls een priemgetal: heeft te maken met een goede hashfunctie Collision resolution by separate chaining botsingen oplossen door gebruik te maken van gelinkte lijsten resultaat van het toevoegen van elementen J 10, B 2, S 19, N 14, W 23 en X N 14 B 2 J 10 S 19 W 23 X 24 + de tabel bevat pointers naar gelinkte lijsten + op zo n gelinkte lijst zitten de elementen waarbij de hashfunctie toegepast op de sleutel een zelfde waarde geeft. Parameter: aard van de hash functie + tweede keuze: de aard van de hash functie + een goede hash functie: de verschillende sleutels op een randomachtige maar uniforme manier over de volledige tabel verdelen + de hash functie: snel te berekenen deling methode: hash adres: de rest bij deling van sleutel door tabellengte h(k) = K % M bij tabellengte M lengte een macht van 2: afzonderen vd. laagste bits vd. sleutel gevaar: bij sommige sleuteltypes vrij dikwijls dezelfde rest: dus botsingen. randomachtige hash functie : beter deling uitvoeren met een priemgetal Er bestaan nog verschillende andere vormen voor de hash functie, bijvoorbeeld folding, middle-squaring en truncation.
4 folding (vouwen): de sleutel verdelen en de verschillende delen optellen een 9-cijfer sleutel: drie delen maken en deze delen optellen K = In plaats van optellen : vermenigvuldiging, aftrekking of deling mogelijk middle-squaring: middelste cijfers uit de sleutel halen en kwadratteren indien resultaat nog groter dan tabellengte: operatie herhalen K = truncation een deel van de sleutel verwijderen en de rest als adres overhouden K = drie laatste cijfers 122 weinig rekentijd maar sleutels meestal niet op een uniforme manier over de tabel verspreid Cluster een rij van aaneensluitende bezette plaatsen in een hash tabel In zo n rij zit dus geen enkele vrije plaats meer. lineaire peil methode geeft aanleiding tot primary clustering wanneer een aantal sleutels op dezelfde plaats botsen, worden deze botsende sleutels toegevoegd op plaatsen vlak voor de botsplaats op die manier kunnen op een aantal plaatsen in de tabel clusters ontstaan zo n cluster groeit steeds sneller en sneller omdat de kans op een botsing bij een nieuw toe te voegen element steeds groter wordt tijdens die groei komen sommige kleine clusters samen wat aanleiding geeft tot grote clusters: het proces versterkt dus zichzelf Dubbel hashing daarentegen geeft geen aanleiding tot primary clustering. Bij een botsing wordt het element niet noodzakelijk toegevoegd vlak naast de botsplaats. Er ontstaat dus niet altijd een cluster van twee elementen. Parameter: probe sequentie lineair peilen eenvoudig/slecht dubbel hashing tweede hash functie nodig deling methode: quotiënt (gereduceerd tot een bereik 1 : M 1) bij deling van sleutel door tabellengte, tenzij dit quotiënt nul is max(1, p(k)%m) met p(k) = max(1, K/M) bij tabellengte M + een peil sequentie moet alle plaatsen van de tabel nagaan + lineair peilen OK: bij M = 7 en begin hashadres gelijk aan 4: achtereenvolgens plaatsen 4, 3, 2, 1, 0 en dan 6 en 5 bekeken totdat een vrije plaats gevonden wordt + dubbel hashing niet zo duidelijk maar met tabellengte M en probe decrement p(k) relatief priem: peil sequentie doet volledige tabel aan + twee getallen zijn relatief priem wanneer ze alleen 1 als gemeenschappelijke deler hebben; wanneer tabellengte een priemgetal is, voor probe decrement gelijk welk getal groter dan of gelijk aan 1 te gebruiken. + een andere combinatie voor een goede peil sequentie geeft: een tabellengte gelijk aan een macht van twee en een oneven getal voor de probe decrement Voorbeeld Gegeven een aantal elementen waarvan de sleutel (K) telkens bestaat uit drie letters, bijv. MEC. Deze elementen moeten in een hash tabel met lengte M = 11 geplaatst worden. De hash functie h(k) wordt berekend door de sleutel te interpreteren als een basis 26 geheel getal. Bij een sleutel K = X 2 X 1 X 0, krijgt elk alfabetisch teken X i een geheeltallige waarde tussen 0 en 25. Voor A wordt de waarde 0 gebruikt, B de waarde 1 en zo verder tot Z met een waarde 25. drie-letter code omzetten van basis-26 getal naar decimaal getal: Basis26Waarde(K) = X X X
5 Op basis van deze basis-26 waarde van de sleutel kunnen de hash functies gedefinieerd worden: h(k) = Basis26Waarde(K) % 11 p(k) = max(1, (Basis26Waarde(K)/11) % 11) Bijvoorbeeld: Basis26Waarde(MEC) = = = 8218 het hash adres van MEC is h(mec) = 8218%11 = 1 lineair peilen: probe p(mec) gelijk aan 1, zoals voor alle andere sleutels dubbel hashing: probe decrement p(mec) = max(1, (8218/11)%11) = 10 lineair peilen dubbel hashing 0 GEN 0 ZOL 1 MEC 1 MEC 2 KOR 2 KOR 3 ZOL 3 LEU 4 BRU 4 GEN 5 ANT 5 ANT 6 GEE 6 GEE BRU 9 TUR 9 10 LEU 10 TUR 17 botsingen 3 botsingen tabel met de volgorde waarin de elementen toegevoegd worden : K basis26(k) h(k) p(k) p(k) (lineair) (dubbel) MEC ANT KOR BRU ZOL GEN LEU GEE TUR Het programma: /* hash.c : sleutel op basis van basis26 waarde */ #include <stdio. h> #include <s tdlib. h> #define NRIJ 11 /* priemgetal! */ #define LEN 4 char invoer [ ] = MEC, ANT, KOR, BRU, ZOL, GEN, LEU, GEE, TUR, 0 ; void voegtoe ( char a [ ] [ LEN], int m, char inv [ ], int ( decfun )(char [ ], int ) int plinfun ( char inv [ ], int m ) ; int pdubfun ( char inv [ ], int m ) ; void druktab( char a [ ] [ LEN], int m ) ; int verbose = 0; int aantal botsingen = 0;
6 int main( int argc, char argv [ ] ) char tabel [NRIJ ] [LEN] ; int m = NRIJ; int i = 0; int c = 0; int ( decfun )(char inv [ ], int m) ; decfun = plinfun ; while ( ( c=getopt ( argc, argv, ldv ))!= EOF ) switch ( c ) case l : decfun = plinfun ; break ; case d : decfun = pdubfun ; return (( inv [0] A ) 26 26) + (( inv [1] A ) 26) + inv [2] A ; int hfun ( char inv [ ], int m ) /* deling methode */ i = basis26 ( inv ) ; return i%m ; int plinfun ( char inv [ ], int m ) /* linear probing */ return 1; int pdubfun ( char inv [ ], int m) /* dubbel hashing */ break ; case v : verbose++; break ; memset ( tabel, \0, NRIJ LEN) ; while ( invoer [ i ] ) voegtoe ( tabel, m, invoer [ i ], decfun ) ; druktab( tabel, m) ; i++; printf ( Aantal botsingen : %d\n, aantal botsingen ) ; int basis26 ( char inv [ ] ) i = basis26 ( inv ) ; i = ( i /m)%m; return i==0? 1 : i ; void druktab( char a [ ] [ LEN], int m ) for ( i =0; i<m; i++) printf ( %3d : % 4.4s \n, i, a [ i ] ) ; void voegtoe ( char a [ ] [ LEN], int m, char inv [ ], int ( decfun )() ) int adr, i ; int dec ; i = adr = hfun ( inv, m) ;
7 dec = ( decfun )( inv, m) ; i f ( verb ose ) printf ( % 4.4s : %3d : %3d\n, inv, adr, dec ) ; while ( a [ i ] ) /* zolang er botsing is */ if ( strncmp ( a [ i ], inv, LEN) == 0 ) /* element reeds aanwezig */ return ; aantal botsingen++ ; i = dec ; /* volg probe sequentie */ if ( i < 0 ) i += m; strncpy ( a [ i ], inv, LEN) ; /* vul lege plaats in */ Denktaak Veronderstel dat hashfunctie in het voorbeeld vervangen wordt door bijgevoegde functie. Bereken de index in de hashtabel voor de eerste drie elementen (MEC, ANT, KOR), met m gelijk aan 11. Treedt er bij deze drie elementen reeds een botsing op? int hfun ( char inv [ ], int m ) i = ( inv [0]<<2) ˆ ( inv [1] > >1); return i%m ; Opties en argumenten dit programma werkt met opties en argumenten (a.out -l bestand) verschillende opties in while lus verwerken met getopt eerste en tweede argument van deze functie: parameters van main functie; het derde argument is een string met de mogelijke opties terugkeerwaarde is telkens één van de mogelijke opties; door middel van een switch kan de desbetreffende optie geselecteerd worden in het derde argument na de optieletter een dubbelpunt (:): bij deze optie is er een bijkomende parameter deze parameter door getopt bereikbaar gesteld via variabele optarg (char ) indien de parameter een getal is, moet de bijhorende numerieke waarde berekend worden, bijv. met de functie atoi of atof. nadat alle opties behandeld zijn, geeft getopt de waarde EOF terug variabele optind heeft dan als waarde de index van het eerstvolgende element in de argv array (dat niet met een minteken begint)
Lineaire 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 informatieDatastructuren en algoritmen voor CKI
Datastructuren en algoritmen voor CKI Jeroen Bransen 1 2 oktober 2015 1 met dank aan Hans Bodlaender en Gerard Tel Priority queue Priority queue ADT insert(q, x): voeg element x toe aan de queue maximum(q):
Nadere informatie29 november 2012 Hashing. Een tijd-ruimte afweging Hashfuncties
Hashing Ferd van Odenhoven Fontys Hogeschool voor Techniek en Logistiek Venlo Software Engineering 29 november 2012 ODE/FHTBM Hashing 29 november 2012 1/30 Hashing Een typisch gebruik van de implementatie
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 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 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 informatieHoofdstuk 9. Hashing
Hoofdstuk 9 Hashing Het zoeken in een verzameling van één object is in deze cursus al verschillende malen aan bod gekomen. In hoofdstuk 2 werd uitgelegd hoe men een object kan zoeken in een array die veel
Nadere informatieTentamen 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 informatieO(1) ZOEKMETHODEN: HASH TECHNIEKEN. Dr. D.P. Huijsmans 24 okt 2012 Universiteit Leiden LIACS
O(1) ZOEKMETHODEN: HASH TECHNIEKEN 1 Dr. D.P. Huijsmans 24 okt 2012 Universiteit Leiden LIACS SNEL ZOEKEN IN ONGESORTEERDE DATA Vroege computer toepassingen waren vaak gebaseerd op grote gesorteerde bestanden;
Nadere informatieNiet-numerieke data-types
Intern wordt een karakter voorgesteld als een rij van acht bits, Niet-numerieke data-types string de letter a 01100001 0110 0001 0x61 97 Bij interpretatie van de inhoud van een byte als een geheel getal,
Nadere informatieDatastructures. Opdracht 3
Datastructures Opdracht 3 Naam Jeffrey van der Lingen Kevin Huijzendveld Joshua Turpijn Klas IS205 Vak Datastructures Datum 06/11/2016 Inhoudsopgave Inleiding... 3 1. Hashfunctie... 4 1.1 Inleiding...
Nadere informatieDynamisch geheugen beheer
Dynamisch geheugen beheer + Normaal wordt laats in het werkgeheugen gereserveerd tijdens de comilatie aan de hand van de declaraties van de variabelen. + Deze geheugenreservering is statisch: in het bronbestand
Nadere informatieEen eenvoudig algoritme om permutaties te genereren
Een eenvoudig algoritme om permutaties te genereren Daniel von Asmuth Inleiding Er zijn in de vakliteratuur verschillende manieren beschreven om alle permutaties van een verzameling te generen. De methoden
Nadere informatieExamen Programmeren 2e Bachelor Elektrotechniek en Computerwetenschappen Faculteit Ingenieurswetenschappen Academiejaar juni, 2010
Examen Programmeren 2e Bachelor Elektrotechniek en Computerwetenschappen Faculteit Ingenieurswetenschappen Academiejaar 2009-2010 16 juni, 2010 **BELANGRIJK** 1. Lees eerst de volledige opgave (inclusief
Nadere informatieO(1) ZOEKMETHODEN: HASH TECHNIEKEN. Dr. D.P. Huijsmans College 7 16 okt 2013 Universiteit Leiden LIACS
O(1) ZOEKMETHODEN: HASH TECHNIEKEN 1 Dr. D.P. Huijsmans College 7 16 okt 2013 Universiteit Leiden LIACS SNEL ZOEKEN IN ONGESORTEERDE DATA Vroege computer toepassingen waren vaak gebaseerd op grote gesorteerde
Nadere informatiePROS1E1 Gestructureerd programmeren in C Dd/Kf/Bd
Inhoudsopgave 1 Inleiding... 1 2 Toekenning- en herhalingsopdrachten (for loop)... 2 2.1 De wet van Ohm... 3 2.2 De spaarrekening... 3 2.3 De transformator... 3 3 Keuze- en herhalingsopdrachten (if, switch,
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 informatie2.1 Bewerkingen [1] Video Geschiedenis van het rekenen ( 15 x 3 = 45
15 x 3 = 45 2.1 Bewerkingen [1] Video Geschiedenis van het rekenen (http://www.youtube.com/watch?v=cceqwwj6vrs) 15 x 3 is een product. 15 en 3 zijn de factoren van het product. 15 : 3 = 5 15 : 3 is een
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 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 informatieSyntax- (compile), runtime- en logische fouten Binaire operatoren
Inhoud Syntax- (compile), runtime- en logische fouten Binaire operatoren Operaties op numerieke datatypen Evaluatie van expressies, bindingssterkte Assignment operaties en short-cut operatoren Controle
Nadere informatiecontinue in een for, while of do lus herhaalt de lus vroegtijdig. De volgende herhaling wordt onmiddellijk begonnen.
Hoofdstuk 3: controlestructuren instructies en blokken Naar elke instructie staat een ; Instructies worden door de haakjes {} in een block samengevat. if else if ( expression) statement1; else statement2;
Nadere informatieEen spoedcursus python
Een spoedcursus python Zoals je in de titel misschien al gezien hebt, geven wij een spoedcursus Python. Door deze cursus leer je alle basics, zoals het rekenen met Python en het gebruik van strings. Het
Nadere informatieConstanten. Variabelen. Expressies. Variabelen. Constanten. Voorbeeld : varid.py. een symbolische naam voor een object.
een symbolische naam voor een object. Variabelen Constanten Variabelen Expressies naam : geeft de plaats in het geheugen aan waarde : de inhoud van het object identifier : een rij van letters en/of cijfers
Nadere informatieTentamen Programmeren in C (EE1400)
TU Delft Tentamen Programmeren in C (EE1400) 3 feb. 2012, 9.00 12.00 Faculteit EWI - Zet op elk antwoordblad je naam en studienummer. - Beantwoord alle vragen zo nauwkeurig mogelijk. - Wanneer C code gevraagd
Nadere informatieVakgroep CW KAHO Sint-Lieven
Vakgroep CW KAHO Sint-Lieven Objecten Programmeren voor de Sport: Een inleiding tot JAVA objecten Wetenschapsweek 20 November 2012 Tony Wauters en Tim Vermeulen tony.wauters@kahosl.be en tim.vermeulen@kahosl.be
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 informatieOperaties op bestanden
Operaties op bestanden C bevat geen speciale taalconstructies voor in- en uitvoer. een verzameling van functies, onderdeel van de standaard C-bibliotheek: fopen fclose fgetc fputc ungetc fscanf fprintf
Nadere informatieProgrammeren 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 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 informatieExamen Programmeren 2e Bachelor Elektrotechniek en Computerwetenschappen Faculteit Ingenieurswetenschappen Academiejaar juni 2011
Examen Programmeren 2e Bachelor Elektrotechniek en Computerwetenschappen Faculteit Ingenieurswetenschappen Academiejaar 2010-2011 21 juni 2011 **BELANGRIJK** 1. Lees eerst de volledige opgave (inclusief
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 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 informatieEE1400: Programmeren in C BSc. EE, 1e jaar, , 3e college
EE1400: Programmeren in C BSc. EE, 1e jaar, 2012-201, e college Arjan van Genderen, Computer Engineering 4-12-2012 Delft University of Technology Challenge the future Hoorcollege Arrays, Pointers en Strings
Nadere informatieExamen Programmeren 2e Bachelor Elektrotechniek en Computerwetenschappen Faculteit Ingenieurswetenschappen Academiejaar juni, 2010
Examen Programmeren 2e Bachelor Elektrotechniek en Computerwetenschappen Faculteit Ingenieurswetenschappen Academiejaar 2009-2010 16 juni, 2010 **BELANGRIJK** 1. Schrijf je naam onderaan op elk blad. 2.
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 informatieEen typisch programma in C en C++ bestaat uit een aantal onderdelen:
Eerste stappen in C. Een typisch programma in C en C++ bestaat uit een aantal onderdelen: /* Alles wat op meerdere lijnen staat zoals hier is commentaar. */ // Dit is commentaar op 1 lijn. Geldig tot einde
Nadere informatieOPDRACHT Opdracht 2.1 Beschrijf in eigen woorden wat het bovenstaande PSD doet.
Les C-02: Werken met Programma Structuur Diagrammen 2.0 Inleiding In deze lesbrief bekijken we een methode om een algoritme zodanig structuur te geven dat er gemakkelijk programmacode bij te schrijven
Nadere informatieWe beginnen met de eigenschappen van de gehele getallen.
II.2 Gehele getallen We beginnen met de eigenschappen van de gehele getallen. Axioma s voor Z De gegevens zijn: (a) een verzameling Z; (b) elementen 0 en 1 in Z; (c) een afbeelding +: Z Z Z, de optelling;
Nadere informatieInformatica: C# WPO 11
Informatica: C# WPO 11 1. Inhoud Pass by reference (ref, out), recursie, code opdelen in verschillende codebestanden 2. Oefeningen Demo 1: Swapfunctie Demo 2: TryParse(int) Demo 3: Recursion Tree Demo
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 informatieInstructies en blokken
Herhaling 1 Instructies en blokken Naar elke instructie staat een ; puntkomma Verschillende instructies worden door de accolades in een block samengevat. Een blok is het zelfde als een enkele instructie.
Nadere informatieArrays. Complexe datastructuren. Waarom arrays. Geen stijlvol programma:
Geen stijlvol programma: Complexe datastructuren Arrays vijf verschillende variabelen voor iets dat als één rij getallen bestempeld wordt; onbruikbaar wanneer het over meer getallen (bijvoorbeeld ) gaat.
Nadere informatieOpdrachten numerieke methoden, week 1
Opdrachten numerieke methoden, week Opdracht : De potentiaal in een diode. [Bewijs dat ψ = u T arcsinh D 2n i ) ] ) ) D = n p = n i e ψ u T e ψ u ψ T = 2n i sinh u T ) D ψ = u T arcsinh 2n i.2 [Conditiegetal
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 informatieProgrammeermethoden. Pointers. Walter Kosters. week 10: november kosterswa/pm/
Programmeermethoden Pointers Walter Kosters week 10: 13 17 november 2017 www.liacs.leidenuniv.nl/ kosterswa/pm/ 1 Pointers Introductie Een pointer is in feite gewoon een geheugenadres. Het geheugen kun
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 informatieGegevens invullen in HOOFDLETTERS en LEESBAAR, aub. Belgische Olympiades in de Informatica (duur : maximum 1u15 )
OI 2010 Finale 12 Mei 2010 Gegevens invullen in HOOFDLETTERS en LEESBAAR, aub VOORNAAM :....................................................... NAAM :..............................................................
Nadere informatieInformatica: C# WPO 7
Informatica: C# WPO 7 1. Inhoud 1D-arrays, Lijsten 2. Oefeningen Demo 1: Vul de 1D-array Demo 2: Stringreplace Demo 3: Vul de lijst Demo 4: Debug oplossingen demo s 1, 2 en 3 A: Array reversal A: Gemiddelde
Nadere informatieProgrammeermethoden NA. Week 5: Functies (vervolg)
Programmeermethoden NA Week 5: Functies (vervolg) Kristian Rietveld http://liacs.leidenuniv.nl/~rietveldkfd/courses/prna2016/ Functies Vorige week bekeken we functies: def bereken(a, x): return a * (x
Nadere informatie5. Vergelijkingen. 5.1. Vergelijkingen met één variabele. 5.1.1. Oplossen van een lineaire vergelijking
5. Vergelijkingen 5.1. Vergelijkingen met één variabele 5.1.1. Oplossen van een lineaire vergelijking Probleem : We willen x oplossen uit de lineaire vergelijking p x+q=r met p. Maxima biedt daartoe in
Nadere informatieVoortgezet Prog. voor KI
Voortgezet Prog. voor KI Docent: Michael Wilkinson IWI 142 tel. 050-3638140 (secr. 3633939) Frank Brokken RC 352 tel. 050-3633688 Voorkennis: Inleiding Programmeren voor KI (nieuwe stijl) Stof: Practicum
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 informatieInstructies en blokken
Herhaling 1 Instructies en blokken 2 Naar elke instructie staat een ; puntkomma Verschillende instructies worden door de accolades in een block samengevat. Een blok is het zelfde als een enkele instructie.
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 informatieObjective-C Basis. 23 april 2005, Eindhoven Patrick Machielse
Objective-C Basis 23 april 2005, Eindhoven Patrick Machielse patrick@hieper.nl Algemeen // extensies Objective-C code in bestanden met.m extensie // commentaar moet! /* Alles hiertussen wordt genegeerd
Nadere informatieSYMBOOL TERM ENGELS NEDERLANDS 1. numeral figure, number. symbool waarmee je een getal schrijft, we hebben 10 cijfers 0 -> 9 2. numral, figure, number
GETALLEN SYMBOOL TERM ENGELS NEDERLANDS 1 cijfer numeral figure, symbool waarmee je een getal schrijft, we hebben 10 cijfers 0 -> 9 2 getal numral, figure, nummer dat bestaat uit 1 of méér cijfers 3 4
Nadere informatieWeek 2 : Hoofdstukken 2 en 6; extra stof: inleiding pointers
Week 2 : Hoofdstukken 2 en 6; extra stof: inleiding pointers Hoofdstuk 6: Beslissingen: if-statement en switch-statement. Inleiding: Condities zijn waar (true) of onwaar (false) In C staat het int-getal
Nadere informatieInformatica: C# WPO 9
Informatica: C# WPO 9 1. Inhoud Functies (functies met return-waarde) 2. Oefeningen Demo 1: Som Demo 2: Min en max of array Demo 3: Retourneer array van randomwaarden A: Absolute waarde A: Afstand A: Aantrekkingskracht
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 informatieProgrammeren in Java les 3
4 september 2015 Deze les korte herhaling vorige week loops methodes Variabelen Soorten variabelen in Java: integer: een geheel getal, bijv. 1,2,3,4 float: een gebroken getal, bijv. 3.1415 double: een
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 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 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 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 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 informatie2.1 Bewerkingen [1] Video Geschiedenis van het rekenen (http://www.youtube.com/watch?v=cceqwwj6vrs) 15 x 3 = 45
15 x 3 = 45 2.1 Bewerkingen [1] Video Geschiedenis van het rekenen (http://www.youtube.com/watch?v=cceqwwj6vrs) 15 x 3 is een product. 15 en 3 zijn de factoren van het product. 15 : 3 = 5 15 : 3 is een
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 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 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 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 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 informatieVoorbeelden. Sorteren. Voorbeeld: n = 5. # intsort.py: sorteren van een rij getallen
Voorbeelden Sorteren Schrijf een programma dat een rij gehele getallen sorteert een eerste functie leest de rij gehele getallen; een tweede functie sorteert deze getallenrij van klein naar groot; een derde
Nadere informatie9 Meer over datatypen
9 Meer over datatypen We hebben al gezien dat het gebruik van symbolische constanten de leesbaarheid van een programma kan verbeteren. Door een geschikte naam (identifier) voor een constante te definiëren,
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 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 informatieProgrammeermethoden. Arrays (vervolg 2) Walter Kosters. week 9: 6 10 november kosterswa/pm/
Programmeermethoden Arrays (vervolg 2) Walter Kosters week 9: 6 10 november 2017 www.liacs.leidenuniv.nl/ kosterswa/pm/ 1 Derde programmeeropgave Life:... citatie/referentie: Tja~\cite{abc} levert Tja
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 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 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 informatie3 Wat is een stelsel lineaire vergelijkingen?
In deze les bekijken we de situatie waarin er mogelijk meerdere vergelijkingen zijn ( stelsels ) en meerdere variabelen, maar waarin elke vergelijking er relatief eenvoudig uitziet, namelijk lineair is.
Nadere informatieIndexen.
Indexen joost.vennekens@kuleuven.be Probleem Snel gegevens terugvinden Gegevens moeten netjes geordend zijn Manier waarop hangt af van gebruik Sequentieel Gesorteerde gegevens, die in volgorde overlopen
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 informatieVAN HET PROGRAMMEREN. Inleiding
OVERZICHT VAN HET PROGRAMMEREN Inleiding Als je leert programmeren lijkt het nogal overweldigend om die eerste stappen te doorworstelen. Er zijn dan ook heel wat programmeertalen (Java, Ruby, Python, Perl,
Nadere informatieWERKOMGEVING... 3 INSTELLINGEN... 3 BASISVAARDIGHEDEN... 3 INVOEREN GEGEVENS... 3 OPMAAK... 3
Competentieprofiel Excel Basis De gebruiker van dit document mag: het werk kopiëren, verspreiden en doorgeven, evenals afgeleide werken maken, onder de volgende voorwaarden: Naamsvermelding. De gebruiker
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 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 gebruiken in ons programma
Hoofdstuk 3 Variabelen introduceren Variabelen gebruiken in ons programma Het zou leuk zijn als ons programma Hallo kan zeggen met de naam van de gebruiker in plaats van het algemene Hallo wereld?. Als
Nadere informatieExamen Datastructuren en Algoritmen II
Tweede bachelor Informatica Academiejaar 2012 2013, tweede zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. Lees de hele
Nadere informatieDomJudge-Practicum. Open Dag UU
1 Introductie DomJudge-Practicum Open Dag UU Bij veel vakken die je volgt tijdens je studie informatica aan de UU, moet je programmeeropdrachten maken. Soms moet je die inleveren zodat ze door de docent
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 informatieSPOJ oplossingen Gilles Callebaut 7 augustus 2015
SPOJ oplossingen 2012-2013 Gilles Callebaut 7 augustus 2015 DISCLAIMER Oefeningen zijn niet altijd correct of optimaal. Gelieve de oefeningen enkel te gebruiken ter ondersteuning. Van kopiëren leer je
Nadere informatiealgoritmiek - antwoorden
2016 algoritmiek - antwoorden F. Vonk versie 1 28-8-2016 inhoudsopgave eenvoudige algoritmes... - 3 - complexe algoritmes... - 7 - zoeken (vwo)... - 10 - sorteren (vwo)... - 12 - Dit werk is gelicenseerd
Nadere informatieDeel 1: Arduino kennismaking. Wat is een microcontroller, structuur van een programma, syntax,
Deel 1: Arduino kennismaking Wat is een microcontroller, structuur van een programma, syntax, Wat is een microcontroller Wat is een microcontroller? Microcontroller = kleine dedicated computer. - Beperkt
Nadere informatieEXACT- Periode 1. Hoofdstuk Grootheden. 1.2 Eenheden.
EXACT- Periode 1 Hoofdstuk 1 1.1 Grootheden. Een grootheid is in de natuurkunde en in de chemie en in de biologie: iets wat je kunt meten. Voorbeelden van grootheden (met bijbehorende symbolen): 1.2 Eenheden.
Nadere informatieDemo document template available on the Rapptorlab website
Proef ingediend met het oog op het behalen van de graad van bachelor in de Ingenieurswetenschappen Demo document template available on the Rapptorlab website Course/thesis example Laurent Segers, Tom van
Nadere informatieSQL is opgebouwd rond een basisinstructie waaraan één of meerdere componenten worden toegevoegd.
BASISINSTRUCTIES SQL SQL : Structured Query Language is een taal gericht op het ondervragen van een relationele database en die aan veel klassieke databasemanagementsystemen kan worden gekoppeld. SQL is
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 informatieZomercursus Wiskunde. Module 1 Algebraïsch rekenen (versie 22 augustus 2011)
Katholieke Universiteit Leuven September 011 Module 1 Algebraïsch rekenen (versie augustus 011) Inhoudsopgave 1 Rekenen met haakjes 1.1 Uitwerken van haakjes en ontbinden in factoren............. 1. De
Nadere informatieZiv-Lempel-Welch Compressie
Ziv-Lempel-Welch Compressie Datastructuren, najaar 1998, tweede programmeeropdracht Het ZLW-algoritme Het ZLW compressie algoritme codeert teksten door daarin strings van variabele lengte om te zetten
Nadere informatie