Arrays. Complexe datastructuren. Waarom arrays. Geen stijlvol programma:

Maat: px
Weergave met pagina beginnen:

Download "Arrays. Complexe datastructuren. Waarom arrays. Geen stijlvol programma:"

Transcriptie

1 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. = samenvoegen van gerelateerde variabelen van hetzelfde data-type Een lijst: een samengesteld data-type; een rij waarvan de elementen allemaal met dezelfde naam maar elk met een eigen volgnummer worden aangeduid; elementen hebben elk een eigen type, bijv. een geheel getal, een reëel getal maar ook een lijst. Waarom arrays Schrijf een programma dat gehele getallen leest en in omgekeerde volgorde terug afdrukt. # keerom.py: vijf getallen inlezen en in omgekeerde volgorde afdrukken Geef v i j f getallen a = int ( raw input ( getal : )) b = int ( raw input ( getal : )) c = int ( raw input ( getal : )) d = int ( raw input ( getal : )) e = int ( raw input ( getal : )) e, d, c, b, a #startoproep Creatie van een lijst: de verschillende elementen opsommen en omsluiten door vierkante haakjes: k = [,,,,, 6, 7] x = [.,.,.] a = [ [,], [,], [,6] ] l = [ ] # geneste lijst # lege lijst Individele elementen in de lijst: aanspreken via een index: een geheel getal, waarbij het eerste element vd. lijst index heeft Index groter of gelijk aan het aantal elementen in de lijst: foutmelding. Met een negatieve index: er wordt van achter naar voor geteld. x x [ ] #. k [ ], k[ ] # 7 # volledige lijst a [ ], a [ ] [ ] # [,] Een lijst opbouwen op basis van invoerwaarden of berekeningen: een element achteraan aan een lijst toevoegen met de append methode

2 # keerom.py: vijf getallen inlezen en in omgekeerde volgorde afdrukken AANTAL = l i j s t = [ ] Geef, AANTAL, v i j f getallen : for i in range (AANTAL) : invoer = raw input ( str ( i )+ : ) l i j s t. append ( int ( invoer ) ) i = AANTAL while i >= : l i j s t [ i ], i = # startoproep lijst i Input: 8 6 Output: 6 8 Numeric Python Alternatief voor het afdrukken in omgekeerde volgorde: for i in range (,AANTAL+) : l i j s t [ i ], raw input( str(i) + : ) functie str: zet getal (argument) om in een string. Aan deze string wordt een tweede string aangeplakt met de + operator. Het geheel wordt dan als prompt uitgeschreven door de raw_input functie. Technisch-wetenschappelijke toepassingen: rekenen met vectoren en matrices: lijsten van gerelateerde waarden van hetzelfde type (geheel,reëel,complex) list type van Python: maar een aantal veelvoorkomende operaties op vectoren en matrices vragen veel ruimte en tijd wanneer deze gedaan worden met de standaard datastructuren zoals lijsten. Oplossing: Numeric Python (NumPy) uitbreiding, een module met een heleboel gereedschappen om verzamelingen van objecten georganiseerd in roosterachtige schema s, zoals vectoren en matrices, efficiënt te manipuleren. (vrij gelijkaardig aan de werking van matrix-talen zoals APL en MATLAB) In de volgende subsecties worden een aantal elementen uit de NumPy module gebruikt om manipulaties op een- en twee-dimensionale arrays te doen. Hierbij worden niet alle specifieke mogelijkheden gebruikt, maar worden de bewerkingen geprogrammeerd op een manier vergelijkbaar met andere programmeertalen, zoals C, Java,...

3 Een-dimensionale arrays Een array is een object data-type: een rij waarvan de elementen allemaal met dezelfde naam maar elk met een eigen volgnummer worden aangeduid: alle elementen zijn van hetzelfde data-type en niet-leeg (vector) elk element in de array wijzigbaar gedurende de levensduur van de array lengte van een array: het aantal elementen, niet wijzigbaar: geen elementen toegevoegen aan of verwijderen uit de array Creatie: de array() functie: { eerste argument: list of tuple van waarden eventueel tweede argument: type van de elementen y = array((-.,.,.,.), float) Aantal in lijst lengte array # tuple Indien dit argument niet gegeven is, bepaalt Python zelf het type. type grootte van element (itemsize). In een array-element a[i] : i de index of subscript. Deze index kan een constante, een variabele of een expressie zijn. De waarde van de index moet wel een geheel getal zijn, groter of gelijk aan nul en kleiner dan het aantal elementen in de array. De waarde van de index kan ook negatief zijn, waarbij de absolute waarde van de kleinste negatieve waarde gelijk moet zijn aan het aantal elementen in de array. Bij een negatieve index wordt van achteraan in de array geteld. Technieken om een vector van een bepaalde lengte te creëren: vector met gehele getallen: met een variante van de range functie; vector met alle elementen gelijk aan : zeros waarbij het eerste argument met behulp van een lijst de lengte aangeeft en het tweede argument het type; vector met alle elementen gelijk aan : ones waarbij het eerste argument met behulp van een lijst de lengte aangeeft en het tweede argument het type. >>> x = array ([,, ]) # list >>> x array ([,, ]) >>> x [ ] >>> y = array ((.,.,.,.), f l oat ) # tuple >>> y [.... ] >>> y. s i ze >>> y. itemsize 8 verschillende elementen in array met index [] operator: >>> z = arange () >>> z [ ] >>> z [ ], z [ ] 8 >>> nul = zeros ( [ 7 ], int ) >>> nul [ ] >>> een = ones ( [ 6 ], f l oat ) >>> een [ ] y[], y[], y[], y[] lengte van de array is geen element y[]

4 Een array is een object: toekenning is het geven van een naam aan dat object. De naam is een aanduiding van of een referentie naar het object. Dmv. toekenningsstatement: naam copiëren naar een tweede naam: alias voor hetzelfde object, deze naam refereert naar datzelfde object. Wanneer een element in het object gewijzigd wordt door gebruik te maken van de eerste naam, dan zal deze wijziging ook te zien zijn, wanneer het object aangesproken wordt door de tweede naam. >>> a = array ( [.,.,. ] ) >>> b = a >>> b [ ] +=. >>> a=, a, b=, b a= [. 6.. ] b= [. 6.. ] # arsom. py: optellen van twee arrays from numpy import array, zeros a = array ( [.,.,.,.,. ] ) b = array ( [.,.,.,.,. ] ) c. c = zeros ( [ ], f loat ) for i in range ( len (a )) : c [ i ] = a [ i ] + b [ i ] a a, +, b, >, c b..... # startoproep i Optellen van twee arrays De naam van de array zelf niet zomaar in om het even welke expressie geen aanduiding van een enkelvoudige geheugenplaats maar een referentie naar een object (aantal geheugenplaatsen). Rekenkundige operator + : optellen van de inhoud van twee geheugenplaatsen Toekenningsstatement (=): resultaat (object) een naam geven double a, b, c ; a b 9. =. + a = b + c ; object waarde c 6.6 waarde a, b en c : arrays deze rekenkundige operatie voorlopig NIET gebruiken: de optelling moet element per element gebeuren: Vergelijken van twee arrays De expressie a == b syntactisch wel correct semantisch anders geïnterpreteerd dan waarschijnlijk bedoeld is. Deze expressie gaat NIET na of de twee arrays dezelfde elementen bevatten. De gelijkheid nagaan moet weer element per element gebeuren in een lus. Na de lus kan de variabele gelijk getest worden. Wanneer deze gelijk is aan True, zijn de twee arrays gelijk (de waarden in de corresponderende elementen zijn gelijk).

5 # arvgl.py: vergelijken van twee arrays from numpy import array a = array ( [.,.,.,.,. ] ) b = array ( [.,.,.,.,. ] ) g e l i j k = True a for i in range ( len (a )) : if a [ i ]!= b [ i ] : b g e l i j k = False break a [ i ], b [ i ] i gelijk TrueFalse if g e l i j k : de twee arrays bevatten dezelfde waardes else : de twee arrays zijn verschillend kortsluitingsprincipe # startoproep # param.py : het gedrag van parameters import numpy def kwadar(x, y, n) : x = x x y [ i ] = y [ i ] y [ i ] return x n = a = b = numpy. zeros ( [ n ], int ) b [ i ] = i Voor oproep van de functie, a Functies met arrays als argumenten Bij oproep van functie met parameters: waarden van de actuele argumenten doorgeven naar de formele parameters: waarden van argumenten worden gebruikt als initialisatie voor parameters. In de functie zelf: formele parameters gebruikt als operands in expressies. Deze formele parameters kunnen daarbij van waarde veranderen. Wanneer functie uitgevoerd is en verlaten wordt (via return), deze eventuele aangepaste waarden van de formele parameters worden NIET teruggecopieerd naar de actuele argumenten in de oproep. en de r i j b bevat :, b [ i ], res = kwadar(a, b, n) Na oproep van de functie, a, met resultaat, res en de r i j b bevat :, b [ i ], # startoproep

6 syst i n a res main Voor oproep van de functie en de rij b bevat : b b kwadar x y i res Na oproep van de functie met resultaat en de rij b bevat : Opgave. Een rij getallen in omgekeerde volgorde uitschrijven met behulp van functies. # keerom.py: getallen inlezen en in omgekeerde vo import numpy def l e e s r i j (x,m) : Geef een aantal gehele getallen for i in range (m) : invoer = raw input ( str ( i )+ : ) x [ i ] = int ( invoer ) def drukrij ( r,m) : for i in range (m) : r [m i ], invoer = raw input ( Geef aantal : ) m = int ( invoer ) a = numpy. zeros ( [m], int ) l e e s r i j (a,m) drukrij (a,m) # startoproep De waarde van a wordt doorgegeven naar de formele parameter x. In de functie kwadar wordt deze x gewijzigd. Maar na terugkeer in het hoofdprogramma is a niet gewijzigd. Dit niet geldt voor de array b: een array is een list, één van de basisobjecttypes van Python. Naam van zo n object: een aanduiding van of referentie naar dit object. syst m main 6 a a Zo n naam als actueel argument doorgeven naar een formele parameter: de volledige array wordt NIET gecopieerd, maar de formele parameter wordt een tweede naam (alias, een bijkomende referentie) naar datzelfde object, net zoals bij een toekenning. a 7 89 leesrij x m drukrij r m In de functie kwadar: de formele parameter y refereert naar dezelfde array als het argument b in de oproep. Omdat de formele parameter refereert naar de originele rij, zal elke wijziging die in de functie door middel van de formele parameter gebeurt, uitgevoerd worden op deze originele rij. 99 levensduur bereik i i levensduur bereik

7 Meer-dimensionale arrays In veel toepassingen: een tabel of een matrix In Python: een lijst, waarbij elk element in deze lijst op zich een lijst is. Bij de definitie van de variabele kan deze geïnitialiseerd worden: a = [ [, ], [, ], [, ] ] >>> a = [ [,], [,], [,] ] >>> a [ [, ], [, ], [, ]] >>> a [ ] [, ] >>> a [ ] [ ] Met MAXRIJ gelijk aan en MAXKOLOM gelijk aan : a[][] a[][] a[][] a[][] a[][] a[][] eerste index : de rij tweede index de kolom in deze rij In het werkgeheugen: één lange rij van opeenvolgende elementen: a[][] a[][] a[][] a[][] a[][] a[][] is een rij van elementen waarin elk element op zich een rij is Module numpy een aantal functies waarmee op een klassiek wetenschappelijk-technische manier met matrices kan gewerkt worden. import numpy a = numpy. ones ( [MAXRIJ,MAXKOLOM], int ) b = numpy. zeros ( [MAXRIJ,MAXKOLOM], f l oat ) c = numpy. identity () functie ones een matrix waarbij de elementen van het type zijn, gegeven door het tweede argument; deze elementen krijgen de waarde Het eerste argument geeft aan hoeveel rijen (eerste getal in de lijst) en hoeveel kolommen (tweede getal in de lijst) er zijn. functie zeros : (gelijkaardig) een matrix, met elementen geïnitialiseerd op functie identity : vierkante identiteitsmatrix waavan de elementen van type float zijn Construeer een matrix waarin elk element gelijk is aan de som van de rij-index en de kolom-index en druk deze matrix af. # matrix.py: matrix met mat[i][j] = i+j import numpy MAXRIJ = MAXKOLOM = def drukmat(x,m, n) : for i in range (m) : for j in range (n) : %d % (x [ i ] [ j ] ), a = numpy. zeros ( [MAXRIJ,MAXKOLOM], int ) for r i j in range (MAXRIJ) :

8 De geconstrueerde matrix heeft volgende inhoud: for kolom in range (MAXKOLOM) : a [ r i j ] [ kolom ] = r i j + kolom drukmat( a,maxrij,maxkolom) #startoproep 6 en wordt in het werkgeheugen als één lange rij gestockeerd: 6 Bij oproep: actueel argument is een referentie naar een object In de formele parameter: een alias van deze referentie: duidt dus hetzelfde object aan. Dus eventuele wijzigingen in de matrix via de formele parameter: zichtbaar in het blok dat de functie opgeroepen heeft met de matrix als actueel argument. syst rij main kolom a 6 a drukmat x m n i Priemgetallen Opgave. Schrijf een programma met functies dat met behulp van de zeef van Eratosthenes alle priemgetallen kleiner dan afdrukt (alle niet-priemgetallen worden weggezeefd). vul zeef; doorloop zeef indien volgend element verschillend is van dit element is een priemgetal; schrap alle volgende veelvouden van dit element; j

9 index zeef i = i = Programma met functies: Driehoek van Pascal e functie: n inlezen, e functie: de driehoek maken e functie: de driehoek afdrukken. i = i = i = 6 i = 7 i = i = i = 7 # zeef.py zoeken van priemgetallen ( Erathostenes) from numpy import def schrap ( zeef, p, n) : i = p while i <n : zeef [ i ] = i += p invoer = raw input ( Geef maximum voor priemgetallen : ) n = int ( invoer ) zeef = ones ( [ n ], int ) zeef [ ] = zeef [ ] = for i in range (,n) : if zeef [ i ] == : i schrap ( zeef, i, n) #startoproep (a + b) = (a + b) = a + b (a + b) = a + ab + b (a + b) = a + a b + ab + b ( ) n + = k ( ) ( ) n n + k k (a + b) = a + a b + 6a b + ab + b (a + b) n = ( ) n a n b + ( ) n a n b + ( ) n a n b ( ) n n a b n + ( ) n n a b n # pascal.py: genereren van driehoek van Pascal import numpy MAX = def leesdimensie () : while True : invoer = raw input ( Geef dimenstie [.. +str (MAX)+ ] : ) n = int ( invoer ) return n if n < MAX : break

10 i- def maakdriehoek (a, n) : for i in range (,n+) : a [ i ] [ ] = a [ i ] [ i ] = for i in range (,n+) : for j in range (, i ) : j- j... a [ i ] [ j ] = a [ i ][ j ] + a [ i ][ j ]... ( ) i j = ( ) i + j ( ) i j Het resultaat voor n = 6: : : : : : 6 : 6: 6 6 i def driehoek (a, n) : for i in range ( n+) : %d % ( i ), :, for j in range ( i +) : %d % (a [ i ] [ j ] ), def : n = leesdimensie () a = numpy. zeros ( [ n+,n+], int ) maakdriehoek (a, n) driehoek (a, n) #hoofdprogramma Matrix-product Inlezen van twee matrices, product berekenen en resultaat afdrukken. c a b r r k ar ar ak = ak ak k l c rk = a rj b jk met l = ak j= ar

11 # matprod.py matrixproduct C = A x B import numpy MAX = def leesdimensie ( tekst ) : while True : invoer = raw input ( tekst ) n = int ( invoer ) if n < MAX : break return n def inwendigproduct (a, b, r, k, l ) : som =. for j in range ( l ) : som += a [ r ] [ j ] b [ j ] [ k ] invoer = input ( element +str ( i )+, +str ( j)+ : ) x [ i ] [ j ] = f l oat ( invoer ) ar = leesdimensie ( aantal r i j en van eerste matrix ) ak = leesdimensie ( aantal kolommen van eerste matrix ) a = numpy. zeros ( [ ar, ak ], f l oat ) leesmatrix (a, ar, ak) ak = leesdimensie ( aantal kolommen van tweede matrix ) b = numpy. zeros ( [ ak, ak ], f l oat ) leesmatrix (b, ak, ak) c = numpy. zeros ( [ ar, ak ], f l oat ) maakproduct(a, b, c, ar, ak, ak) matrix (a, ar, ak ) matrix (b, ak, ak ) matrix (c, ar, ak ) return som def maakproduct(a, b, c, ar, ak, ak) : for r in range ( ar ) : for k in range ( ak) : c [ r ] [ k ] = inwendigproduct (a, b, r, k, ak ) def matrix (x,m, n) : for i in range (m) : for j in range (n) : %9. f % (x [ i ] [ j ] ), # startoproep def leesmatrix(x,m, n) : for i in range (m) : for j in range (n) :

12 Begrippen Array: declaratie en initialisatie. De selectie-operator []. Een arraynaam als argument bij een functieoproep. Meer-dimensionale arrays. def rechtsonder (a, n) : %d % ( i ), :, for j in range ( n i ) :, for j in range ( n i,n) : %d % (a [ i ] [ j ] ), def linksboven (a, n) : Driehoeksgedeelten van een matrix %d % ( i ), :, for j in range (n i ) : %d % (a [ i ] [ j ] ), def rechtsboven (a, n) : %d % ( i ), :, for j in range ( i ) :, for j in range ( i, n) : %d % (a [ i ] [ j ] ),

Controle structuren. Keuze. Herhaling. Het if statement. even1.c : testen of getal even of oneven is. statement1 statement2

Controle structuren. Keuze. Herhaling. Het if statement. even1.c : testen of getal even of oneven is. statement1 statement2 Controle structuren De algemene vorm: 1 bloks door middel van indentatie Keuze Herhaling if expressie :...... In de volgende vorm is het else gedeelte weggelaten: if expressie :... Het if keuze- of conditioneel

Nadere informatie

Voorbeelden. Sorteren. Voorbeeld: n = 5. # intsort.py: sorteren van een rij getallen

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

Constanten. Variabelen. Expressies. Variabelen. Constanten. Voorbeeld : varid.py. een symbolische naam voor een object.

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

Niet-numerieke data-types

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

Interne voorstelling. types en conversies. Binaire en andere talstelsels. Voorstelling van gegevens: bits en bytes

Interne voorstelling. types en conversies. Binaire en andere talstelsels. Voorstelling van gegevens: bits en bytes Interne voorstelling types en conversies Het geheugen wordt ingedeeld in een aantal gebieden van gelijke grootte. Een gebied van 8 bits noemt men een byte (nible een groep van bits). Een (computer)woord

Nadere informatie

Persistentie via bestanden. Bestanden

Persistentie via bestanden. Bestanden programma is transient Persistentie via bestanden Administratieve gegevens zijn verzameld in het file-object: o.a. waar ergens op de disk de data van het bestand te vinden is. invoer van de gebruiker programma

Nadere informatie

Programmeren (1) Examen NAAM:

Programmeren (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 informatie

Programmeermethoden NA

Programmeermethoden NA Programmeermethoden NA Week 6: Lijsten Kristian Rietveld http://liacs.leidenuniv.nl/~rietveldkfd/courses/prna/ Bij ons leer je de wereld kennen 1 Getal opbouwen Stel je leest losse karakters (waaronder

Nadere 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

Small Basic Programmeren Text Console 2

Small Basic Programmeren Text Console 2 Oefening 1: Hoogste getal Je leest een reeks positieve gehele getallen in totdat je het getal 0 (nul) invoert. Daarna stopt de invoer en druk je een regel af met het hoogste getal uit de reeks. Voorbeeld:

Nadere informatie

Programmeermethoden NA. Week 6: Lijsten

Programmeermethoden NA. Week 6: Lijsten Programmeermethoden NA Week 6: Lijsten Kristian Rietveld http://liacs.leidenuniv.nl/~rietveldkfd/courses/prna2016/ Getal opbouwen Stel je leest losse karakters (waaronder cijfers) en je moet daar een getal

Nadere informatie

Vakgroep CW KAHO Sint-Lieven

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

Programmeermethoden NA. Week 5: Functies (vervolg)

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

WI1808TH1/CiTG - Lineaire algebra deel 1

WI1808TH1/CiTG - Lineaire algebra deel 1 WI1808TH1/CiTG - Lineaire algebra deel 1 College 6 26 september 2016 1 Hoofdstuk 3.1 en 3.2 Matrix operaties Optellen van matrices Matrix vermenigvuldigen met een constante Matrices vermenigvuldigen Machten

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

3. Structuren in de taal

3. Structuren in de taal 3. Structuren in de taal In dit hoofdstuk behandelen we de belangrijkst econtrolestructuren die in de algoritmiek gebruikt worden. Dit zijn o.a. de opeenvolging, selectie en lussen (herhaling). Vóór we

Nadere informatie

Lineaire data structuren. Doorlopen van een lijst

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 informatie

Voorbeeldtentamen Inleiding programmeren (IN1608WI), Oktober 2003, , Technische Universiteit Delft, Faculteit EWI, Afdeling 2.

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

HOOFDSTUK 3. Imperatief programmeren. 3.1 Stapsgewijs programmeren. 3.2 If Then Else. Module 4 Programmeren

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

Wiskundige Analyse I. Hoofdstuk 1. Vraag 1.1 Het beginvoorwaardenprobleem. x 2 y + xy + x 2 y = 0, y(0+) = 1, y (0+) = 0. bezit een unieke oplossing.

Wiskundige Analyse I. Hoofdstuk 1. Vraag 1.1 Het beginvoorwaardenprobleem. x 2 y + xy + x 2 y = 0, y(0+) = 1, y (0+) = 0. bezit een unieke oplossing. Hoofdstuk 1 Wiskundige Analyse I Vraag 1.1 Het beginvoordenprobleem x 2 y + xy + y = 0, y(0+) = 1, y (0+) = 0 bezit een unieke oplossing. vals Vraag 1.2 Het beginvoordenprobleem x 2 y + xy + x 2 y = 0,

Nadere informatie

GEDETAILLEERDE INHOUD

GEDETAILLEERDE INHOUD GEDETAILLEERDE INHOUD dankwoord 17 Inleiding 19 Waarom leer je programmeren?... 19 Waarom Python?... 20 Waarom Minecraft?... 20 Wat staat er in dit boek?.... 20 Online bronnen... 22 Ga nu maar op avontuur...

Nadere informatie

OEFENINGEN PYTHON REEKS 1

OEFENINGEN PYTHON REEKS 1 Vraag 1: Expressies & Types OEFENINGEN PYTHON REEKS 1 Python maakt gebruik van enkele vaak voorkomende (data)types. Zo zijn er integers die behoren tot de gehele getallen (VB: 3), zijn er float s die behoren

Nadere informatie

SPOJ oplossingen Gilles Callebaut 7 augustus 2015

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

Programmeermethoden NA. Week 5: Functies (vervolg)

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

OEFENINGEN PYTHON REEKS 1

OEFENINGEN PYTHON REEKS 1 OEFENINGEN PYTHON REEKS 1 Vraag 1: Python als een eenvoudige rekenmachine Python maakt gebruik van enkele vaak voorkomende (data)types. Zo zijn er integers die behoren tot de gehele getallen (VB: 3) en

Nadere informatie

OEFENINGEN PYTHON REEKS 1

OEFENINGEN PYTHON REEKS 1 Vraag 1: Expressies & Types OEFENINGEN PYTHON REEKS 1 Python maakt gebruik van enkele vaak voorkomende (data)types. Zo zijn er integers die behoren tot de gehele getallen (VB: 3), zijn er float s die behoren

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

Syntax- (compile), runtime- en logische fouten Binaire operatoren

Syntax- (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 informatie

Een korte samenvatting van enkele FORTRAN opdrachten

Een korte samenvatting van enkele FORTRAN opdrachten Een korte samenvatting van enkele FORTRAN opdrachten Inhoud 1 Introductie 3 2 De structuur van een FORTRAN programma 3 3 Datatypen, variabelen en declaraties 3 4 Expressies-volgorde van uitwerking 4 5

Nadere informatie

PYTHON REEKS 1: BASICS. Mathias Polfliet

PYTHON REEKS 1: BASICS. Mathias Polfliet PYTHON REEKS 1: BASICS Mathias Polfliet mpolflie@etrovub.be EENVOUDIGE REKENMACHINE 2 soorten getallen Getallen Z -> integers (gehele getallen) Getallen R -> floating points (reële getallen) Door beperkte

Nadere informatie

Programmeermethoden. Arrays (vervolg 2) Walter Kosters. week 9: 6 10 november kosterswa/pm/

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

Als een PSD selecties bevat, deelt de lijn van het programma zich op met de verschillende antwoorden op het vraagstuk.

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

Python. Vraag 1: Expressies en types. Vraag 1 b: Types -Ingebouwde functies- Vraag 1 a 3/10/14

Python. Vraag 1: Expressies en types. Vraag 1 b: Types -Ingebouwde functies- Vraag 1 a 3/10/14 Python Vraag 1: Expressies en types Integrated Development Environment (IDE): Ø Wing 101 (gratis te downloaden op www.wingware.com) Oefeningen in de shell >> noemen we de prompt Python commando s = expressies

Nadere informatie

Programmeermethoden. Arrays (vervolg 2) Walter Kosters. week 9: 5 9 november kosterswa/pm/

Programmeermethoden. Arrays (vervolg 2) Walter Kosters. week 9: 5 9 november kosterswa/pm/ Programmeermethoden Walter Kosters week 9: 5 9 november 2018 www.liacs.leidenuniv.nl/ kosterswa/pm/ 1 Derde programmeeropgave Nonogram:... citatie/referentie: Tja~\cite{abc} levert Tja [1], met \begin{thebibliography}{xx}

Nadere informatie

5.7.1 Priemgetallen Driehoek van Pascal Matrix-product Begrippen... 42

5.7.1 Priemgetallen Driehoek van Pascal Matrix-product Begrippen... 42 Inhoudsopgave 1 Algoritmes en computerprogramma s 1 1.1 Basiselementen van een computer............................ 1 1.2 Algoritmes........................................ 1 1.3 Som van twee getallen..................................

Nadere informatie

Zoemzinnen. Algemene info. Functies met een variabel aantal argumenten

Zoemzinnen. Algemene info. Functies met een variabel aantal argumenten Zoemzinnen Functies met een variabel aantal argumenten Bij het definiëren van een functie leg je in principe vast hoeveel argumenten er aan de functie moeten doorgegeven worden. Dit aantal correspondeert

Nadere informatie

PROS1E1 Gestructureerd programmeren in C Dd/Kf/Bd

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

Informatica: C# WPO 10

Informatica: C# WPO 10 Informatica: C# WPO 10 1. Inhoud 2D arrays, lijsten van arrays, NULL-values 2. Oefeningen Demo 1: Fill and print 2D array Demo 2: Fill and print list of array A: Matrix optelling A: Matrix * constante

Nadere informatie

Programmeren in Java les 3

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

VAN HET PROGRAMMEREN. Inleiding. Het spiraalmodel. De programmeertaal. vervolgens de berekening van het totale bedrag, incl. BTW:

VAN HET PROGRAMMEREN. Inleiding. Het spiraalmodel. De programmeertaal. vervolgens de berekening van het totale bedrag, incl. BTW: 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 informatie

VAN HET PROGRAMMEREN. Inleiding

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

algoritmiek - antwoorden

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

Informatica: C# WPO 7

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

Java Les 3 Theorie Herhaal structuren

Java Les 3 Theorie Herhaal structuren Java Les 3 Theorie Herhaal structuren Algemeen Een herhaal structuur een is programmeertechniek waarbij bepaalde Java instructies worden herhaald net zo lang tot een bepaalde voorwaarde is bereikt. Een

Nadere informatie

10. Controleopdrachten

10. Controleopdrachten Computeralgebra met Maxima 10. Controleopdrachten 10.1. Functies en operatoren voor lijsten/vectoren/arrays Een van de eenvoudigste maar belangrijkste lusachtige functies is de makelist opdracht. Voor

Nadere informatie

OPDRACHT Opdracht 2.1 Beschrijf in eigen woorden wat het bovenstaande PSD doet.

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

Gegevens invullen in HOOFDLETTERS en LEESBAAR, aub. Belgische Olympiades in de Informatica (duur : maximum 1u15 )

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

Toetsvoorbereiding Informatica HAVO/VWO 5 (T51) Programmeren met Python II. Duur: 70 minuten Datum: sept 2018

Toetsvoorbereiding Informatica HAVO/VWO 5 (T51) Programmeren met Python II. Duur: 70 minuten Datum: sept 2018 Toetsvoorbereiding Informatica HAVO/VWO 5 (T51) Programmeren met Python II Duur: 70 minuten Datum: sept 2018 Stof: Basiskennis van vorig jaar, (Eigen) Functies & parameters, Loops (for en while), Turtle

Nadere informatie

Lab Webdesign: Javascript 3 maart 2008

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

Deeltentamen Grammatica s en ontleden 22 december 2005

Deeltentamen Grammatica s en ontleden 22 december 2005 Tentamen Grammatica s en ontleden 22 december 2005 1 Deeltentamen Grammatica s en ontleden 22 december 2005 Let op: opgave 1 t/m 4 tellen voor (slechts) 5 punten mee, opgave 5 voor maar liefst 50 punten,

Nadere informatie

Objectgericht Programmeren. (in Python)

Objectgericht Programmeren. (in Python) Objectgericht Programmeren (in Python) Motivatie Programmeren is moeilijk Waarom? Complexiteit 100 200 300 400 500 kloc (1000 lijnen code) g1 = raw_input("eerste getal?") g2 = raw_input("tweede getal?")

Nadere informatie

Algoritmen en programmeren: deel 2 - basis

Algoritmen en programmeren: deel 2 - basis Algoritmen en programmeren: deel 2 - basis Ruud van Damme Creation date: 25 april 2005 Update: 16 november 2006, 9 september 2007 Overzicht 1 Basisbenodigdheden voor alle problemen 2 Alles in stukjes op

Nadere informatie

17 Operaties op bits. 17.1 Bitoperatoren en bitexpressies

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

II. ZELFGEDEFINIEERDE FUNCTIES

II. ZELFGEDEFINIEERDE FUNCTIES II. ZELFGEDEFINIEERDE FUNCTIES In Excel bestaat reeds een uitgebreide reeks van functies zoals SOM, GEMIDDELDE, AFRONDEN, NU enz. Het is de bedoeling om functies aan deze lijst toe te voegen door in Visual

Nadere informatie

Een topprogrammeur in het OO programmeren is Graig Larman. Hij bedacht de volgende zin:

Een topprogrammeur in het OO programmeren is Graig Larman. Hij bedacht de volgende zin: Java Les 2 Theorie Beslissingen Algemeen Net als in het dagelijks leven worden in software programma s beslissingen genomen, naast het toekennen van waarden aan variabelen zijn beslissingen één van de

Nadere informatie

Aanvullende toets Gameprogrammeren (INFOB1GP) Woensdag 24 december 2014, uur

Aanvullende toets Gameprogrammeren (INFOB1GP) Woensdag 24 december 2014, uur Aanvullende toets Gameprogrammeren (INFOB1GP) Woensdag 24 december 2014, 13.30-15.30 uur Naam: Studentnummer: Het tentamen bestaat uit 4 opgaven. Opgaven 1 levert 8 punten op, opgave 2 levert 12 punten

Nadere informatie

1 Algoritmes en computerprogramma s

1 Algoritmes en computerprogramma s 1 Algoritmes en computerprogramma s 1.1 Basiselementen van een computer Een computer is opgebouwd uit een heleboel verschillende onderdelen. Een schematisch diagram wordt getoond in de volgende figuur.

Nadere informatie

OEFENINGEN PYTHON REEKS 6

OEFENINGEN PYTHON REEKS 6 OEFENINGEN PYTHON REEKS 6 1. A) Schrijf een functie die een getal x en een getal y meekrijgt. De functie geeft de uitkomst van volgende bewerking als returnwaarde terug: x y x als x y x y y als x < y B)

Nadere informatie

Tentamen Programmeren in C (EE1400)

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

Inleiding Programmeren 2

Inleiding Programmeren 2 Inleiding Programmeren 2 Gertjan van Noord November 19, 2018 Overzicht Grafische programma s en tekstgebaseerde programma s Stijladviezen (Jeff Knupp, Writing Idiomatic Python) File Processing (Zelle 5.9.2)

Nadere informatie

Het warmteverlies van het lichaamsoppervlak aan de wordt gegeven door de volgende formule:

Het warmteverlies van het lichaamsoppervlak aan de wordt gegeven door de volgende formule: Opgave 1. (4 punten) Inleiding: Een vleermuis is een warmbloedig zoogdier. Dat wil zeggen dat hij zijn lichaamstemperatuur op een konstante waarde moet zien te houden. Als de omgeving kouder is dan de

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

Programmeren. a. 0, 0, 0 b. 0, 0, 27 c. 15, 12, 0 d. 15, 12, 27

Programmeren. a. 0, 0, 0 b. 0, 0, 27 c. 15, 12, 0 d. 15, 12, 27 Programmeren 0. (1 punt.) Stel, een "afhankelijk kind" is een persoon is die jonger is dan 18 jaar, en hooguit 8.000 euro verdient. Welke van de onderstaande expressies definieert een afhankelijk kind?

Nadere informatie

Een typisch programma in C en C++ bestaat uit een aantal onderdelen:

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

2.1 Bewerkingen [1] Video Geschiedenis van het rekenen (http://www.youtube.com/watch?v=cceqwwj6vrs) 15 x 3 = 45

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

recursie Hoofdstuk 5 Studeeraanwijzingen De studielast van deze leereenheid bedraagt circa 6 uur. Terminologie

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

Python voor Natuur- en Sterrenkundigen Week 1

Python voor Natuur- en Sterrenkundigen Week 1 Python voor Natuur- en Sterrenkundigen Week 1 Kristian Rietveld http://liacs.leidenuniv.nl/~rietveldkfd/courses/pmpy2015/ Wat is Python & Waarom Python? "Scripttaal", ontworpen door Guido van Rossum eind

Nadere informatie

Proef-tentamen Algoritmiek Datum en tijd

Proef-tentamen Algoritmiek Datum en tijd Proef-tentamen Algoritmiek Datum en tijd Instructies: - Beantwoord de vragen direct in dit document. Er is geen los papier nodig - Vul de gegevens hieronder volledig in - Schrijf duidelijk en netjes -

Nadere informatie

Programmeren in C# Samenvatting van C#

Programmeren in C# Samenvatting van C# Programmeren in C# Samenvatting van C# Proceduraal Programmeren Functies (O: void + return, I: referentie of value) Arrays, Lijsten Lussen (for, while, do while) Condities, if-else, switch Variabelen,

Nadere informatie

Hutscodering. De techniek: illustratie. een tabel met 7 plaatsen, genummerd van 0 tot en met 6.

Hutscodering. De techniek: illustratie. een tabel met 7 plaatsen, genummerd van 0 tot en met 6. 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

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

POD1 - Hoofdstuk 1: Inleiding

POD1 - Hoofdstuk 1: Inleiding POD1 - Hoofdstuk 1: Inleiding 2/59 POD1 - Hoofdstuk 1: Inleiding Stijn Lievens (Stijn.Lievens@hogent.be) Noemie Slaats (Noemie.Slaats@hogent.be) Lieven Smits (Lieven.Smits@hogent.be) Martine Van Der Weeen

Nadere informatie

Programmeermethoden. Arrays. Walter Kosters. week 7: oktober kosterswa/pm/

Programmeermethoden. Arrays. Walter Kosters. week 7: oktober kosterswa/pm/ Programmeermethoden Walter Kosters week 7: 15 19 oktober 2018 www.liacs.leidenuniv.nl/ kosterswa/pm/ 1 Nonogrammen Japanse puzzels (Nonogrammen) zien er zo uit: 1 1,1 1 1,1 1 0 1,1 0 1,1 3 7 7 7 7 7 7

Nadere informatie

Een spoedcursus python

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

10 Meer over functies

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

Programmeren en Wetenschappelijk Rekenen in Python. Wi1205AE I.A.M. Goddijn, Faculteit EWI 13 mei 2014

Programmeren en Wetenschappelijk Rekenen in Python. Wi1205AE I.A.M. Goddijn, Faculteit EWI 13 mei 2014 Programmeren en Wetenschappelijk Rekenen in Python Wi1205AE, 13 mei 2014 Bijeenkomst 7 Onderwerpen Tips met betrekking tot boolse variabelen en loops Numpy Lijsten, tuples, arrays, matrices Wat is het

Nadere informatie

Het relaas van de beginnende programmeur. Het hoe en waarom van de assistent

Het relaas van de beginnende programmeur. Het hoe en waarom van de assistent Het relaas van de beginnende programmeur Het hoe en waarom van de assistent 1. Help, mijn code doet niks... Mogelijke oplossingen: Heb je op run geduwd (groene pijltje)? Zolang je niet op 'run' duwt, kent

Nadere informatie

Dynamisch geheugen beheer

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

Pascal uitgediept Data structuren

Pascal uitgediept Data structuren Pascal uitgediept Data structuren MSX Computer & Club Magazine nummer 68-juni/juli 1994 Herman Post Scanned, ocr ed and converted to PDF by HansO, 2001 In deze aflevering wordt bekeken hoe zelf een datastructuur

Nadere informatie

Technology, Innovation & Society Delft

Technology, Innovation & Society Delft Technology, Innovation & Society Delft VOORBLAD SCHRIFTELIJKE TOETSEN OPLEIDING TOETSCODE GROEP : ELEKTROTECHNIEK : GESPRG-SC1 : EP11, EP12 TOETSDATUM : 22-01-2015 TIJD : 13.00u-14.30u AANTAL PAGINA S

Nadere informatie

Programmeren en Wetenschappelijk Rekenen in Python. Wi1205AE I.A.M. Goddijn, Faculteit EWI 22 april 2014

Programmeren en Wetenschappelijk Rekenen in Python. Wi1205AE I.A.M. Goddijn, Faculteit EWI 22 april 2014 Programmeren en Wetenschappelijk Rekenen in Python Wi1205AE, 22 april 2014 Inleiding Cursus coördinator e-mail Docent e-mail : Jacco Hoekstra : J.M.Hoekstra@TUDelft.nl : Ingeborg Goddijn : I.A.M.Goddijn@TUDelft.nl

Nadere informatie

SEQUENTIE-STRUCTUUR. Oefening: Dichtheid

SEQUENTIE-STRUCTUUR. Oefening: Dichtheid SEQUETIE-STRUCTUUR Oefening: Dichtheid geef diameter vd bol(m) //Declaratie input variabelen double diameter; double soortmassa; //Declaratie variabelen voor tussenresultaten double volume; diameter //Declaratie

Nadere informatie

Recursion. Introductie 37. Leerkern 37. Terugkoppeling 40. Uitwerking van de opgaven 40

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

{ auteur, toelichting }

{ auteur, toelichting } Programmeren Blok A Trilogie van (programmeer)talen http://www.win.tue.nl/ wstomv/edu/ip0/ College Syntaxis (vormleer): Hoe ziet t eruit, hoe schrijf je t? Tom Verhoeff Technische Universiteit Eindhoven

Nadere informatie

6,1. Samenvatting door een scholier 1809 woorden 28 oktober keer beoordeeld. Informatica

6,1. Samenvatting door een scholier 1809 woorden 28 oktober keer beoordeeld. Informatica Samenvatting door een scholier 1809 woorden 28 oktober 2005 6,1 16 keer beoordeeld Vak Methode Informatica Turing informatica samenvatting. hst3: algoritme:een beschrijving van stappen die gedaan moeten

Nadere informatie

Programmeren 1 20 januari 2012 Prof. T. Schrijvers

Programmeren 1 20 januari 2012 Prof. T. Schrijvers Programmeren 1 20 januari 2012 Prof. T. Schrijvers Instructies Schrijf al je antwoorden op deze vragenbladen (op de plaats die daarvoor is voorzien). Geef ook je kladbladen af. Bij heel wat vragen moet

Nadere informatie

Informatica: C# WPO 11

Informatica: 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 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

Modelleren en Programmeren

Modelleren en Programmeren Modelleren en Programmeren Jeroen Bransen 13 november 2015 Expressies Functies Ingebouwde functies Variabelenbereik Inleveropgave 1 Terugblik Programma is een lijst van opdrachten Terugblik Programma is

Nadere informatie

Inleiding Programmeren 2

Inleiding Programmeren 2 Inleiding Programmeren 2 Gertjan van Noord en Leonie Bosveld December 19, 2016 Vandaag Naar aanleiding van de opdrachten Zelle hoofdstuk 11 Boolean variabelen: niet checken met == Fout: if clicked == True

Nadere informatie

Uitwerking Tweede deeltentamen Imperatief programmeren - versie 1 Vrijdag 21 oktober 2016, uur

Uitwerking Tweede deeltentamen Imperatief programmeren - versie 1 Vrijdag 21 oktober 2016, uur Uitwerking Tweede deeltentamen Imperatief programmeren - versie 1 Vrijdag 21 oktober 2016, 13.00-15.00 uur 1. De situatie die ontstaat door class A : B C D; kan beschreven worden door (a) B is een A (b)

Nadere informatie

Hoofdstuk 0. Van Python tot Java.

Hoofdstuk 0. Van Python tot Java. Hoofdstuk 0. Van Python tot Java. In dit eerste hoofdstuk maken we de overstap van Python naar Java. We bespreken de verschillen en geven wat achtergrondinformatie. In het volgende hoofdstuk gaan we dieper

Nadere informatie

sheets Programmeren 1 Java college 6, Walter Kosters De sheets zijn gebaseerd op met name hoofdstuk 13 en 14 van: D. Bell en M. Parr, Java voor studenten, Prentice Hall, 2002 http://www.liacs.nl/home/kosters/java/

Nadere informatie

Informatica: C# WPO 12

Informatica: C# WPO 12 Informatica: C# WPO 12 1. Inhoud Datacontainers, bestanden uitlezen, bestanden schrijven en data toevoegen aan en bestand, csv-bestanden 2. Oefeningen Demo 1: Point2D Demo 2: Notepad Demo 3: Read CSV-file

Nadere informatie

Inleiding Programmeren 2

Inleiding Programmeren 2 Inleiding Programmeren 2 Gertjan van Noord December 17, 2018 Vandaag Naar aanleiding van de opdrachten Zelle hoofdstuk 11 Boolean variabelen: niet checken met == Fout: if clicked == True : gohome () Goed:

Nadere informatie

Determinanten. Definities en eigenschappen

Determinanten. Definities en eigenschappen Determinanten Definities en eigenschappen Definities (korte herhaling) Determinant van een 2x2-matrix: a b ad bc c d S. Mettepenningen Determinanten 2 Definities (korte herhaling) Determinant van een 3x3-matrix:

Nadere informatie

Code Voorbeeld Resultaat. print(6, end="") print(7) print(type(6)) <class 'int'> + optelling - aftrekking * vermenigvuldiging / deling 8 16 % modulo

Code Voorbeeld Resultaat. print(6, end=) print(7) print(type(6)) <class 'int'> + optelling - aftrekking * vermenigvuldiging / deling 8 16 % modulo Code overzicht Python Code Voorbeeld Resultaat print() print(6) print(6, end="") print(7) print(type(6)) 6 67 + optelling - aftrekking * vermenigvuldiging / deling // deling afgerond naar

Nadere informatie

[15] Variabelen in functies (of: een woordje over scope)

[15] Variabelen in functies (of: een woordje over scope) [15] Variabelen in functies (of: een woordje over scope) In de vorige leerfiche hebben we geleerd over functies. We leerden dat functies parameters hebben en dat ze return-waarden kunnen teruggeven aan

Nadere informatie