Lab Webdesign: Javascript 25 februari 2008

Maat: px
Weergave met pagina beginnen:

Download "Lab Webdesign: Javascript 25 februari 2008"

Transcriptie

1 H4: FUNCTIES We zullen in dit hoofdstuk zien hoe we functies moeten maken, aanroepen, argumenten doorgeven en waarden retourneren. Ook zullen we het hebben over het begrip "recursie", en laten zien hoe we zelf in JavaScript een recursieve functie kunnen creëren. Daarna zullen het hebben over de ingebouwde functies van JavaScript. Tenslotte zullen we ingaan op het verschil tussen functies en "methods". FUNCTIES MAKEN Een functie kan je in Javascript gebruiken om een groep opdrachten te kunnen uitvoeren met een aangegeven naam. De opdrachten of statements die binnen de functie staan worden uitgevoerd wanneer de functie wordt aangeroepen. Een functie kan waarden ontvangen en retourneren naar de plaats van aanroep. Eenvoudig voorbeeld: function toonzin(){ document.write('een zin in een functie.<br>'); Het sleutelwoord function wordt gebruikt om een functie aan te maken. Dit woord wordt gevolgd door de naam van de functie, deze naam kan je zelf kiezen. Na de naam van de functie noteer je een paar ronde haken ( en ). Hier zal je later namen van argumenten noteren. De functie toonzin ontvangt geen argumenten, toch moeten de ronde haken er staan. De statements die de ziel van de functie uitmaken worden genoteerd tussen accolades: { en. Wanneer deze functie wordt aangeroepen zal de zin in het document worden geplaatst. Functies worden doorgaans in een script-blok in de hoofding van de pagina geplaatst. De informatie in de hoofding wordt geladen vooraleer de browser iets toont, zodoende ben je er zeker van dat de functie reeds geladen en dus gekend is door de browser vooraleer je ze aanroept. 1

2 FUNCTIES AANROEPEN Een functie doet niks op zich, de statements binnen de functies worden pas uitgevoerd wanneer de functie wordt aangeroepen. <HTML> <HEAD> <TITLE>Lab webdesign</title> function toonzin(){ document.write('een zin in een functie.<br>'); </HEAD> <BODY> toonzin() </BODY> </HTML> Je merkt dat de functie-declaratie in de hoofding van de pagina staat. Het aanroepen van deze functie gebeurt binnen de BODY van het document, daar de document.write-opdracht die zal worden uitgevoerd informatie op het zichtbare gebied van de webpagina moet plaatsen. Functies kunnen meerdere keren worden aangeroepen binnen hetzelfde document. Dit kan met een eenvoudige for-lus gedemonstreerd worden: for (var teller = 1 ; teller < 11 ; teller ++){ toonzin() 2

3 ARGUMENTEN DOORGEVEN AAN EEN FUNCTIE We zorgen ervoor dat we zelf kunnen kiezen welke zin we op het scherm zetten. Hiervoor doen we twee aanpassingen: we geven bij aanroep van de functie een argument mee: de weer te geven zin. we zorgen ervoor dat het argument bruikbaar is in de functie door het te stockeren in een variabele. De naam van deze variabele is in dit voorbeeld tekst, deze naam kan je zelf kiezen. <HTML> <HEAD> <TITLE>Lab Webdesign</TITLE> function toonzin(tekst){ document.write(tekst +'<BR>'); </HEAD> <BODY> toonzin("een eerste zin"); toonzin("een tweede zin"); toonzin("nog een zin"); </BODY> </HTML> Belangrijk: de scope (levensduur) van de variabele tekst is enkel de functie toonzin, buiten de functie is de variabele niet gekend. WAARDEN RETOURNEREN Een functie kan ook een waarde retourneren naar de plaats van aanroep. Met het sleutelwoord return geef je aan welke waarde je wenst te retourneren <HTML> <HEAD> <TITLE> Lab Webdesign </TITLE> function dubbel(getal){ if(!isnan(getal)) return 2 * getal else return "geen getal!" 3

4 </HEAD> <BODY> document.write("<br>" +dubbel(50)); document.write("<br>" +dubbel(46.2)); document.write("<br>" +dubbel("aap")); </BODY> </HTML> Het sleutelwoord return wordt vaak gebruikt om functies vroegtijdig (onder bepaalde voorwaarden) te beëindigen. FUNCTIES IN EEN.JS-BESTAND Je zal tijdens het leren en werken met Javascript talloze nuttige functies schrijven die je wellicht op vele pagina's van je website zal kunnen gebruiken. Om de functie niet op elke pagina te moeten hernemen, met de nodige onderhoudsproblemen die hiermee gepaard gaan, kan je ervoor opteren om functies onder te brengen in aparte bestanden met een extensie.js. functie5.html <HTML> <HEAD> <TITLE> Lab Webdesign </TITLE> <script type="text/javascript" src="functie5.js"> </HEAD> <BODY> document.write("<br>" +dubbel(50)); document.write("<br>" +dubbel(46.2)); document.write("<br>" +dubbel("aap")); </BODY> </HTML> functie5.js function dubbel(getal){ if(!isnan(getal)) return 2 * getal else return "geen getal!" 4

5 VOORDELEN In principe zouden we onze Javascript-opdrachten steeds in de HTML-pagina kunnen opnemen op die plaatsen waar ze "nodig zijn". Het komt echter regelmatig voor dat (bijna) identieke stukjes script op meerdere plaatsen gebruikt worden. In dergelijke gevallen is het vaak handig om er een functie van te maken. We hoeven dan minder in te tikken en onze pagina wordt kleiner. Bovendien neemt de leesbaarheid van de pagina vaak toe, en hoeven we eventuele wijzigingen maar op één plaats aan te brengen, zodat we onze code makkelijker kunnen onderhouden. Om gebruik te kunnen maken van een functie moeten we twee dingen doen: we moeten de functie eerst definiëren, en vervolgens moeten we de functie aanroepen. Het definiëren van een functie gaat als volgt: function test() { document.write("hello, world") We gebruiken dus het gereserveerde woord "function", gevolgd door de naam van de functie (in dit geval: "test") en de twee haakjes "(" en ")". Zo meteen zullen we zien dat er tussen die haakjes een of meer " parameters" kunnen staan, maar functies zonder parameters zijn ook toegestaan. Om het kerngedeelte van de functie, waarin staat wat er moet gebeuren als de functie wordt aangeroepen, staan de twee haken "{" en "". Deze haken gebruiken we ook om twee of meer opdrachten samen te voegen tot een "blok" dat bijvoorbeeld meerdere malen moet worden uitgevoerd in een herhalingslus. Bij het definiëren van functies zijn de haken echter altijd verplicht, ook als de functie slechts één enkele opdracht bevat. Nu we de functie hebben gedefinieerd, moeten we haar nog aanroepen. Dat gaat als volgt: test() Bij het aanroepen van een functie gebruiken we dus de naam ervan, gevolgd door de twee haakjes, maar zonder het woord "function". De functie uit dit voorbeeld is niet zo heel erg interessant: er wordt alleen maar een tekst op het scherm getoond, maar er wordt geen waarde teruggegeven. (In een taal als Pascal zouden we dit een procedure noemen in plaats van een functie.) 5

6 Een "typische" functie daarentegen geeft wel een waarde terug; de aanroep van zo'n functie is dan: tst = test() We kennen hier dus aan de variabele tst de waarde toe die als resultaat wordt teruggegeven door de functie test. Het probleem is alleen nog, dat onze voorbeeldfunctie helemaal geen waarde teruggeeft! Na bovenstaande aanroep zal variabele tst dan ook de waarde "undefined" hebben. Om hier iets aan te doen, moeten we nog een opdracht aan de functie toevoegen waarmee een waarde wordt geretourneerd, bijvoorbeeld: return 123 Ook "return" is een gereserveerd woord binnen JavaScript; het mag alleen gebruikt worden binnen een functie. Al met al ziet ons voorbeeld er nu als volgt uit: function test() { document.write("test") return 123 tst = test() document.write(tst) Het resultaat zal zijn dat variabele tst de waarde 123 krijgt en dat "test123" naar het scherm wordt geschreven. Indien we de waarde van tst niet hoeven te onthouden voor gebruik verderop in het programma, mogen we de laatste twee opdrachten overigens ook samenvoegen tot: document.write(test()) 6

7 PARAMETERS We hebben aan de hand van een heel eenvoudig voorbeeld de basisbeginselen van het gebruik van functies besproken. Nu zullen we zien hoe we diezelfde beginselen toepassen bij het schrijven van een wat ingewikkelder functie. Als voorbeeld zullen we de functie "faculteit" kiezen, een functie die bijvoorbeeld bij statistische berekeningen regelmatig gebruikt wordt. De wiskundige notatie is: n! (een n met een uitroepteken, uitgesproken als "n faculteit", waarbij n een geheel getal groter dan of gelijk aan een is). Deze notatie kunnen we echter niet gebruiken volgens de JavaScript-regels; in plaats daarvan gebruiken we: faculteit(n). Dit betekent dat sprake is van een functie met een "parameter", zeg maar: een waarde (n) die aan de functie wordt aangeboden als invoer. We kunnen ook functies hebben met meerdere parameters; in dat geval worden de parameters van elkaar gescheiden door middel van komma's, bijvoorbeeld: mijnfunctie(a,b,c). Om onze functie daadwerkelijk te kunnen schrijven, moeten we ons herinneren hoe "faculteit" ook al weer berekend wordt. Dat gaat als volgt: 1! is 1; 2! is 1*2=2; 3! is 1*2*3=6; enzovoort, dus n! is 1*2*3* *n. We kunnen de functie nu schrijven met behulp van een herhalingslus: { var tmp = 1 for (i=1;i<=n;i++) tmp = tmp * i return tmp Als we de functie nu bijvoorbeeld aanroepen met de opdracht: document.write(faculteit(5)), dan wordt de waarde 120 naar het scherm geschreven. We maken binnen de functie dus gebruik van een tijdelijke variabele tmp die de beginwaarde 1 krijgt. Vervolgens wordt de lus "n" maal uitgevoerd, waarbij "n" de parameter is waarmee we de functie aanroepen; in ons voorbeeld dus vijf. Bij de eerste iteratie wordt aan tmp een nieuwe waarde toegekend, te weten: de oude waarde van tmp (de door ons toegekende beginwaarde 1) maal de waarde die de lusteller op dat moment heeft (eveneens 1), dus de "nieuwe" waarde is ook 1. Bij de tweede iteratie wordt tmp gelijk aan 1 * 2, dus 2; bij de derde iteratie wordt tmp gelijk aan 2 * 3, dus 6; bij de vierde iteratie wordt tmp 6 * 4, dus 24; en bij de vijfde iteratie tenslotte krijgt tmp de waarde 24 * 5, dus 120. Dat eindresultaat wordt teruggegeven als resultaat van de functie door middel van de opdracht "return tmp". We kunnen hier twee dingen opmerken. Allereerst is het van belang dat we aan tmp een beginwaarde geven (d.m.v. "tmp = 1"). Zouden we dat niet doen, dan zou tmp bij de eerste iteratie nog "undefined" zijn, en de opdracht tmp = tmp * 1 leidt dan tot de foutmelding "tmp is not a number". Daarnaast zouden we kunnen opmerken dat we in dit geval aan lusteller i ook de beginwaarde 2 zouden kunnen geven; roepen we onze functie namelijk aan met "faculteit(1)", dan heeft de parameter n immers de waarde 1 en is de voorwaarde voor uitvoering van de lus meteen al onwaar (want 2 is niet kleiner dan of gelijk aan 1). De functie geeft meteen tmp terug als resultaat, en tmp heeft nog de beginwaarde 1; dat klopt dan mooi, want 1! is gedefinieerd als 1. In dit voorbeeld maakt het weinig uit (de functie zal er niet merkbaar sneller door worden), maar in het algemeen moeten we goed opletten welke beginwaarden en voorwaarden voor uitvoering we in onze herhalingslussen gebruiken! 7

8 RECURSIE We hebben de functie faculteit nu geschreven met behulp van een herhalingslus, en dat ligt ook tamelijk voor de hand. Er is echter een alternatieve wijze, die gebruik maakt van het feit dat functies in JavaScript zelf ook functies kunnen aanroepen. Dat kunnen andere functies zijn, maar functies kunnen eventueel ook zichzelf aanroepen. In dat laatste geval spreken we van "recursie". Als we nog eens kijken naar de betekenis van "faculteit", dan zien we bijvoorbeeld dat 4! = 1 * 2 * 3 * 4, en 5! = 1 * 2 * 3 * 4 * 5. Met andere woorden, 5! is gelijk aan 4! maal 5, en in het algemeen geldt dat n! gelijk is aan (n-1)! maal n. Van deze eigenschap maken we gebruik bij onze recursieve definitie, die er als volgt uit ziet: function faculteit(n) { if (n == 1) return 1 else return faculteit(n-1) * n We weten dat voor het "speciale geval" 1! geldt dat het resultaat gelijk is aan 1, terwijl voor het "algemene geval" n! geldt dat het resultaat gelijk is aan (n-1)! maal n, zoals hierboven beschreven. Deze regels zien we heel duidelijk terug in onze recursieve definitie. Indien we deze functie aanroepen met "faculteit(5)", dan is "n" in eerste instantie gelijk aan 5, zodat het "else"-gedeelte van de if-opdracht wordt uitgevoerd. De waarde van n wordt tijdelijk opgeslagen (op de zogenaamde "stack"), met de bedoeling om die t.z.t. te vermenigvuldigen met het resultaat van "faculteit(n-1)", oftewel: "faculteit(4)", zodra dat bekend is. Bij het berekenen van "faculteit(4)" wordt opnieuw het else-gedeelte uitgevoerd: ook de waarde 4 wordt op de stack gezet, terwijl nu "faculteit(3)" berekend moet worden. Dit gaat zo door totdat de stack de getallen 5, 4, 3 en 2 bevat, en "faculteit(1)" moet worden berekend. Nu geldt eindelijk dat n gelijk is aan 1, dus deze functieaanroep geeft de waarde 1 terug. Vervolgens wordt deze waarde vermenigvuldigd met de laatste waarde die op de stack was gezet (2), waarna het resultaat van "faculteit(2)" bekend is; tegelijk wordt die laatste waarde 2 van de stack verwijderd. Nu wordt het resultaat van "faculteit(2)" vermenigvuldigd met wat vervolgens de laatste waarde op de stack is (3), enzovoort, net zolang totdat het resultaat van "faculteit(4)" met de waarde 5 op de stack is vermenigvuldigd, en dan zijn we klaar. Zoals wel uit dit voorbeeld blijkt, is het gebruik van recursie relatief ingewikkeld. We moeten er bijvoorbeeld aan denken dat het laatste getal dat we op de stack hebben gezet er als eerste weer vanaf komt; we spreken hier van "Last In First Out", ofwel LIFO. Daarnaast moeten we er voor zorgen dat de recursieve aanroepen een keer stoppen. Als we de recursieve versie van onze functie bijvoorbeeld aanroepen met "faculteit(0)", dan zal nooit 8

9 gelden dat n gelijk is aan 1, dus de "return 1" zal ook nooit worden uitgevoerd. In eerste instantie roepen we de functie immers aan met n = 0, vervolgens (in het else-gedeelte) met n = -1, dan met n = -2, enzovoort. In theorie zou dit oneindig zo door kunnen gaan, dus onze functie zou nooit een waarde teruggeven en ons programma zou "hangen". In de praktijk zou JavaScript merken dat er te veel getallen op de stack komen te staan, en het programma zou afgebroken worden met een foutmelding als "stack overflow". Ditzelfde gebeurt trouwens als we een zeer grote waarde voor n kiezen, bijvoorbeeld als we de functie aanroepen met "faculteit(100000)". Bovendien is de recursieve variant aanzienlijk trager dan de versie met de herhalingslus. Gezien deze nadelen zullen we niet zo vaak gebruik maken van recursie, maar er zijn gevallen waarin recursie een heel elegante definitie van een functie mogelijk maakt, bijvoorbeeld bij het sorteren van gegevens. 9

10 INGEBOUWDE FUNCTIES JavaScript kent ook enkele ingebouwde functies die we kunnen aanroepen zonder dat we ze eerst zelf hoeven te definiëren. Een voorbeeld daarvan is de functie "parseint". We geven een string als parameter mee aan de functie, en krijgen hetzij een geheel getal, hetzij de waarde "NaN" (not a number) terug. Bijvoorbeeld: parseint("3") geeft als resultaat het getal 3, net als parseint("3q"). Zodra de functie een teken tegenkomt dat niet kan worden geïnterpreteerd als deel van een geheel getal, wordt alles vanaf dat teken tot aan het einde van de string genegeerd. Zo geeft parseint("3.14") het resultaat 3, want een "decimal point" (onze komma) kan geen deel uitmaken van een geheel getal, en parseint("-3.14") geeft het resultaat -3. Kan het eerste teken van de string direct al niet deel uitmaken van een geheel getal, dan krijgen we het resultaat "NaN" terug. PARSEINT Met de functie parseint kan je cijfers van een tekenreeks afkappen. Begint de tekenreeks niet met cijfers dan retourneert parseint NaN: Not a Number. Deze functie wordt vaak gebruikt om kommagetallen af te kappen tot gehele getallen. document.write("<br>" + parseint("50")); document.write("<br>" + parseint(" ")); document.write("<br>" + parseint(" ")); document.write("<br>" + parseint(" ")); document.write("<br>" + parseint(" 37 varkens")); document.write("<br>" + parseint("cursussen van het jaar 2008")); var jaar = 120; if ( parseint(jaar / 4) == (jaar / 4 ) ) { document.write("<br>jaar is deelbaar door 4"); Een vergelijkbare ingebouwde functie is parsefloat, alleen kunnen we daar ook een getal met een decimal point terugkrijgen. Zo geeft parsefloat("-3.14") de waarde terug, en parsefloat("3q") de waarde 3. PARSEFLOAT Deze Javascript-functie zoekt het eerste (komma)getal in een tekenreeks. Begint de tekenreeks niet met een getal dan retourneert parseint NaN: Not a Number. document.write("<br>" + parsefloat("50")); document.write("<br>" + parsefloat(" ")); document.write("<br>" + parsefloat(" ")); document.write("<br>" + parsefloat(" ")); document.write("<br>" + parsefloat(" 37 varkens")); document.write("<br>" + parsefloat("cursussen van het jaar 2008")); 1 0

11 JavaScript bevat ook twee functies om strings te kunnen gebruiken waarin tekens anders dan letters of cijfers voorkomen. De functie "escape" zet een niet-alfanumeriek teken om naar de notatie "%xx", waarbij xx de ASCII-waarde van dat teken is. Zo geeft escape(" ") het resultaat "%20". Voor tekens die wèl alfanumeriek zijn, geeft deze functie het teken zelf als resultaat terug, dus escape("a") geeft als resultaat "a". De functie "unescape" doet precies het tegenovergestelde: unescape("a") geeft als resultaat "a", en unescape("%20") geeft als resultaat " ". Deze functies zijn van belang om nietalfanumerieke tekens van de ene web-pagina aan de andere door te kunnen geven. Tenslotte kent JavaScript de ingebouwde functie "eval". Deze functie is zeer krachtig: we geven als parameter een string mee waarin JavaScript-expressies en opdrachten mogen voorkomen, en krijgen het bijbehorende resultaat terug. In de expressies mogen ook variabelen voorkomen. We kunnen bijvoorbeeld aan variabele x de waarde 10 toekennen, en vervolgens schrijven: y = eval("x+faculteit(5)+2"), waarbij "faculteit" onze eerder gedefinieerde functie is. Het resultaat zal zijn dat y de waarde 132 krijgt. 1 1

12 FUNCTIES EN METHODEN Laten we eens een functie definiëren waarmee we kunnen bepalen welk van de twee als parameters meegegeven getallen het grootst is. Dat kan bijvoorbeeld als volgt: function max(x,y) { if (x > y) return x else return y Als we deze functie bijvoorbeeld aanroepen met: m = max(1,2), dan krijgt m de waarde 2; met m = max(-1,-2) krijgt m de waarde -1 (want -1 is groter dan -2). Nu bestaat er in sommige programmeertalen een ingebouwde functie max die precies hetzelfde doet als de door ons gedefinieerde functie; als JavaScript zo'n functie zou bevatten, zouden we die gewoon aan kunnen roepen zonder de functie eerst te hoeven definiëren. En inderdaad kunnen we in JavaScript schrijven: m = Math.max(-1,-2) met het zelfde resultaat als in ons vorige voorbeeld. Er is echter een subtiel verschil: in het geval van "Math.max" is sprake van een ingebouwd "object" Math, dat de "methode" max bevat. Methoden horen dus, anders dan ingebouwde functies, bij een specifiek object en niet bij de taal "als geheel". Op objecten en hun methoden (methods), eigenschappen (properties) en gebeurtenissen (events) zullen we uitgebreider ingaan in hoofdstuk 6 en 8 van deze cursus. Voor het moment volstaat het om te weten dat veel van de functies die in andere talen zijn ingebouwd, in JavaScript ook voorhanden zijn, maar dan als methoden van ingebouwde objecten als Math, Date en string. CONCLUSIE In dit hoofdstuk hebben we gezien hoe we zelf al dan niet recursieve functies kunnen definiëren, en we hebben gezien dat JavaScript ook een aantal ingebouwde functies kent. Tenslotte hebben we functies vergeleken met methoden. In het volgende hoofdstuk zullen we het hebben over de "operators" waarmee allerlei rekenkundige en logische bewerkingen kunnen worden uitgevoerd, en over de voorrangsregels die gelden als we meer dan een operator in een opdracht gebruiken. Tenslotte zullen we kennis maken met enkele bronnen op het Web waar we verdere informatie over JavaScript kunnen vinden. TIP: Bekijk ook eens volgende pagina: 1 2

13 Hoofdstuk: Oefeningen Functies OEFENINGEN FUNCTIES OEFENING 1 KNOPPEN: Maak een javascript pagina waar je 5 knoppen zetten met hierin 1 tot 5 en als je op een van deze knoppen duwt krijg je een popup met een bevestiging op welke knop je hebt geklikt. OEFENING 2: NAMEN Maak met behulp van een functie en een formulier een pagina waar je jouw voornaam en achternaam moet ingeven. Als je dit hebt gedaan en je klikt dan op een knop met de naam Geef volledige Naam worden je voornaam + achternaam achter elkaar gezet. OEFENING 3: OPTELLEN Kopieer volgende code. Voeg twee 3-digit nummer in de twee bovenste velden en klik op de add button. Leg uit wat er mis is en pas de code aan zodat de juiste som wordt weergegeven. <html> <head> <title>som Maker</title> function addit() { var value1 = document.getelementbyid("inputa").value; var value2 = document.getelementbyid("inputb").value; document.getelementbyid("output").value = value1 + value2; </head> <body> <form name="adder"> <input type="text" name="inputa" id="inputa" value="0" size="4" /><br /> <input type="text" name="inputb" id="inputb" value="0" size="4" /> <input type="button" value="add" onclick="addit()"> <p> </p> <input type="text" name="output" id="output" size="6" /> </form> </body> </html> 1 3

14 Hoofdstuk: Oefeningen Functies OEFENING 4: VERANDER DE FOUT Kijk naar volgende functie definitie? Kan je een probleem vinden; zo ja wat moet je aanpassen. function format(ohmage) { var result; if ohmage >= 1e6 { ohmage = ohmage / 1e6; result = ohmage + Mohms ; else { if (ohmage >= 1e3) ohmage = ohmage / 1e3; result = ohmage + Kohms ; else result = ohmage + ohms ; alert(result); 1 4

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

Variabelen en statements in ActionScript

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

Computervaardigheden. Universiteit Antwerpen. Computervaardigheden en Programmatie. Grafieken en Rapporten 1. Inhoud. Wat is scripting?

Computervaardigheden. Universiteit Antwerpen. Computervaardigheden en Programmatie. Grafieken en Rapporten 1. Inhoud. Wat is scripting? Inhoud Computervaardigheden Hoofdstuk 4 Scripting (Let op: dit is enkel voor studenten Biologie.) Dit hoofdstuk bekijkt heel kort de basis van scripting. - Opstellen van functies. - Conditionele code.

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

Lab Webdesign: Javascript 11 februari 2008

Lab Webdesign: Javascript 11 februari 2008 H3: HERHALINGSLUSSEN EN LOGICA Om de voorbeelden niet nodeloos lang te maken, zullen we in het vervolg niet altijd de SCRIPT-tags en de HTML-commentaarregels herhalen. Om de JavaScript-opdrachten --de

Nadere informatie

Informatietechnologie 2. JavaScript. Functies, Objecten en toegang tot de DOM. Kristof Michiels

Informatietechnologie 2. JavaScript. Functies, Objecten en toegang tot de DOM. Kristof Michiels Informatietechnologie 2 JavaScript Functies, Objecten en toegang tot de DOM Kristof Michiels In deze presentatie Functies Objecten Toegang tot de DOM: basis 2 / 32 Functies Wat zijn functies? Kort gezegd

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

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

Web building gevorderden: CSS & JavaScript. Karel Nijs 2008/11

Web building gevorderden: CSS & JavaScript. Karel Nijs 2008/11 Web building gevorderden: CSS & JavaScript Karel Nijs 2008/11 Webbuilding gevorderden les 3 JavaScript intro JavaScript invoegen JavaScript statements JavaScript popup berichten JavaScript functies JavaScript

Nadere informatie

PHP. Les 4 : Variabelen

PHP. Les 4 : Variabelen PHP Les 4 : Variabelen Interessante links: o http://www.dbzweb.be/moermant/ o http://php.net/manual/en/function.echo.php o http://www.w3schools.com/php/default.asp Wat zijn variabelen? Variabelen zijn

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

Lab Webdesign: Javascript 7 april 2008

Lab Webdesign: Javascript 7 april 2008 H8: FORMULIEREN In dit hoofdstuk komt het "form"-object aan de orde: we zullen zien hoe we JavaScript kunnen gebruiken voor het manipuleren en valideren van de gegevens die een eindgebruiker invult in

Nadere informatie

JavaScript. 0 - Wat is JavaScript? JavaScript toevoegen

JavaScript. 0 - Wat is JavaScript? JavaScript toevoegen 0 - Wat is JavaScript? JavaScript is hele andere koek dan Scratch. Het wordt ook door professionele programmeurs gebruikt. Doordat er veel mensen gebruik maken van JavaScript is er veel informatie over

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

Een eenvoudig algoritme om permutaties te genereren

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

oefeningen opstellen met GeoGebra en javascript

oefeningen opstellen met GeoGebra en javascript oefeningen opstellen met GeoGebra en javascript Er zijn heel wat verschillende mogelijkheden om GeoGebra en Javascript te combineren in het opstellen van oefeningen. Antwoorden in het applet zelf: - Je

Nadere informatie

van PSD naar JavaScript

van PSD naar JavaScript 2015 van PSD naar JavaScript F. Vonk versie 2 19-9-2015 inhoudsopgave 1. inleiding... - 2-2. ontwikkelomgeving... - 3-3. programmeerconcepten... - 4 - statement... - 4 - sequentie... - 4 - variabele en

Nadere informatie

Lab Webdesign: Javascript 11 februari 2008

Lab Webdesign: Javascript 11 februari 2008 H2: BASISBEGRIPPEN In dit hoofdstuk zullen er enkele basisbegrippen worden behandelt PLAATSING VAN JAVASCRIPT-CODE DE SCRIPT-TAG De script-tag geeft aan dat er gebruik zal worden gemaakt van een scripttaal.

Nadere informatie

Uitleg: In de bovenstaande oefening zie je in het eerste blokje een LEES en een SCHRIJF opdracht. Dit is nog lesstof uit het tweede trimester.

Uitleg: In de bovenstaande oefening zie je in het eerste blokje een LEES en een SCHRIJF opdracht. Dit is nog lesstof uit het tweede trimester. In onderstaande oefeningen zijn kleuren gebruikt. Deze dienen aleen om de structuren makkelijker terug te kunnen herkennen. Ze worden niet standaard zo gebruikt. De dunne rood/roze balken zijn ook geen

Nadere informatie

Foutcontrole met Javascript

Foutcontrole met Javascript Foutcontrole met Javascript Pol Van Dingenen Yannick Van Hauwe INLEIDING Het controleren van de gegevens die ingevuld zijn in formulieren is heel erg belangrijk. In de praktijk is enkel en alleen controle

Nadere informatie

Javascript oefenblad 1

Javascript oefenblad 1 Leer de basis van Javascript. Javascript oefenblad 1 Niels van Velzen Javascript oefenblad 1 Pagina 2 Inleiding Javascript is niet altijd even makkelijk. Vooral aan het begin is het even wennen hoe de

Nadere informatie

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

Les 9: formulier controle met javascript.

Les 9: formulier controle met javascript. Les 9: formulier controle met javascript. Javascript is erg veel gebruikt bij internet toepassingen. In tegenstelling tot PHP, wat een server side scripting is, is java client side scripting. Dwz, niet

Nadere informatie

Hoofdstuk 20: Wiskundige functies

Hoofdstuk 20: Wiskundige functies Hoofdstuk 20: Wiskundige functies 20.0 Introductie Er is een uitgebreid aanbod aan wiskundige functies in Excel, variërend van het simpele + teken tot de esoterische statistiek functies voor een correlatie

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

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

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

Lab Webdesign: Javascript 11 februari 2008 JAVASCRIPT

Lab Webdesign: Javascript 11 februari 2008 JAVASCRIPT H1: INLEIDING JAVASCRIPT Met HTML kun je fraaie webpagina's bouwen, alleen: ze zijn erg statisch. HTML is dan ook een pagina-beschrijvingstaal en geen echte programmeertaal. Om je homepagina interactief

Nadere informatie

Meer Blokken. 1. Dit is een functie genaamd Maximum, die twee argumenten heeft: number1 en number2.

Meer Blokken. 1. Dit is een functie genaamd Maximum, die twee argumenten heeft: number1 en number2. Meer Blokken Voorkennis: SuperDojo, Snake Leerdoelen: Meer Blokken Introductie Meer Blokken zijn Scratch s manier van functies. Functies zijn een heel belangrijk concept in alle programmeertalen. Het staat

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

Exercise assistant on-line

Exercise assistant on-line Exercise assistant on-line Onderwerpen - Introductie Exercise Assistant - On-line volgens MVC principe - Problemen bij MVC principe - Mogelijke oplossing - Richtingen onderzoek - Mogelijkheid tot meedoen

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

[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

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

[8] De ene 1 is de andere niet

[8] De ene 1 is de andere niet [8] De ene 1 is de andere niet Volg mee via 08_Types.py In de volgende leerfiche gaan we rekenen met Python. Dat kan je in een programma doen, maar dat kan je ook gewoon vanuit het Shell-venster doen.

Nadere 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

Inhoud. Informatica. Hoofdstuk 5 Scripting. Context. Editor voor Programmeercode. Scripting 1

Inhoud. Informatica. Hoofdstuk 5 Scripting. Context. Editor voor Programmeercode. Scripting 1 5.1 5.2 1rste BAC Biologie Hoofdstuk 5 Inhoud Inleiding Programeerconstructies functies variabelen (toekenning) statements (print, ) controlestructuren (if, while, until, for) Oefeningen 5.3 5.4 "functionzero.zip"

Nadere informatie

[14] Functies. Volg mee via 14_Functies-1.py. We beginnen met een eenvoudig voorbeeldje:

[14] Functies. Volg mee via 14_Functies-1.py. We beginnen met een eenvoudig voorbeeldje: [14] Functies Een goede programmeur doet altijd zijn best om zoveel mogelijk aan hergebruik van code te doen. Je probeert in je programma code te gebruiken die iemand anders heeft gemaakt, of code die

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

Formulieren maken met Dreamweaver CS 4/CS 5

Formulieren maken met Dreamweaver CS 4/CS 5 Formulieren maken met Dreamweaver CS 4/CS 5 In deze handleiding leer je om een formulier en elementen die je binnen een formulier kunt gebruiken, te ontwerpen met Dreamweaver. Het uitgangspunt is dat dit

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

Deel 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, 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 informatie

1 Inleiding in Functioneel Programmeren

1 Inleiding in Functioneel Programmeren 1 Inleiding in Functioneel Programmeren door Elroy Jumpertz 1.1 Inleiding Aangezien Informatica een populaire minor is voor wiskundestudenten, leek het mij nuttig om een stukje te schrijven over een onderwerp

Nadere 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

PYTHON REEKS 2: FUNCTIES. Mathias Polfliet

PYTHON REEKS 2: FUNCTIES. Mathias Polfliet PYTHON REEKS 2: FUNCTIES Mathias Polfliet mpolflie@etrovub.be TERUG NAAR PYTHON BASICS VRAAG 1: VOLUME BOL Het volume van een bol met straal r is 4 3 πr3 π Wat is het volume in cm³ van een bol met straal

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

HOOFDSTUK 3. Imperatief programmeren. 3.1 Stapsgewijs programmeren. 3.2 If Then Else. Informatie. Voorbeeld. Voorbeeld: toegangsprijs

HOOFDSTUK 3. Imperatief programmeren. 3.1 Stapsgewijs programmeren. 3.2 If Then Else. Informatie. Voorbeeld. Voorbeeld: toegangsprijs 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

Functies. Huub de Beer. Eindhoven, 4 juni 2011

Functies. Huub de Beer. Eindhoven, 4 juni 2011 Functies Huub de Beer Eindhoven, 4 juni 2011 Functies: je kent ze al Je hebt al verschillende PHP functies gebruikt: pi() om het getal π uit te rekenen. sin( 0.453 ) om het de sinus van het getal 0.453

Nadere informatie

Inhoud leereenheid 4. Inleiding JavaScript. Introductie 99. Leerkern 100. Zelftoets 108. Terugkoppeling 109

Inhoud leereenheid 4. Inleiding JavaScript. Introductie 99. Leerkern 100. Zelftoets 108. Terugkoppeling 109 Inhoud leereenheid 4 Inleiding JavaScript Introductie 99 Leerkern 100 1 Leren programmeren in JavaScript 100 2 Chapter 1: Introduction 101 3 Chapter 2, paragrafen 1 t/m 5 102 4 Chapter 2, paragrafen 6

Nadere informatie

Derde Delphi Programma verkenning

Derde Delphi Programma verkenning Derde Delphi Programma verkenning In deze opdracht gaan we een aantal typische componenten en gegevenstypen van Windows en Delphi verkennen. We bouwen een eenvoudige rekenmachine en ondertussen leer je

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

In de tweede regel plaatsen we in het gereserveerde stukje geheugen een getal.

In de tweede regel plaatsen we in het gereserveerde stukje geheugen een getal. 4. Array s Een array is een geïndexeerde variabele. Deze zin zal de nodig vragen oproepen, waarop enige uitleg van toepassing is. Met variabelen hebben we al kennis gemaakt. In een variabele kun je iets

Nadere informatie

Je gaat leren programmeren in Ruby. En daarna in Ruby een spelletje maken. Websites zoals Twitch en Twitter gemaakt zijn met behulp van Ruby?

Je gaat leren programmeren in Ruby. En daarna in Ruby een spelletje maken. Websites zoals Twitch en Twitter gemaakt zijn met behulp van Ruby? 1 Je gaat leren programmeren in Ruby. En daarna in Ruby een spelletje maken. Websites zoals Twitch en Twitter gemaakt zijn met behulp van Ruby? Voordat je begint met programmeren, moet je Ruby installeren.

Nadere informatie

Disclaimer Het bestand dat voor u ligt, is nog in ontwikkeling. Op verzoek is deze versie digitaal gedeeld. Wij willen de lezer er dan ook op wijzen

Disclaimer Het bestand dat voor u ligt, is nog in ontwikkeling. Op verzoek is deze versie digitaal gedeeld. Wij willen de lezer er dan ook op wijzen Disclaimer Het bestand dat voor u ligt, is nog in ontwikkeling. Op verzoek is deze versie digitaal gedeeld. Wij willen de lezer er dan ook op wijzen dat er zowel typografische als inhoudelijke onvolkomenheden

Nadere informatie

Cursus Excel voor beginners (6) Functies.

Cursus Excel voor beginners (6) Functies. Cursus Excel voor beginners (6) Functies. Handleiding van Auteur: CorVerm September 2008 Functies in Excel. Laten we eerst even kijken wat een functie is. Een functie bestaat uit een aantal argumenten

Nadere informatie

Visual Basic.NET. Visual Basic.NET. M. den Besten 0.3 VB. NET

Visual Basic.NET. Visual Basic.NET. M. den Besten 0.3 VB. NET Visual Basic.NET M. den Besten 0.3 VB. NET Inhoud Voorwoord Deel 1 Visual Basic.NET 1.1 Inleiding...13 1.2 De programmeertaal Visual Basic.NET...14 1.3 Microsoft Visual Basic 2010 Express Edition...15

Nadere informatie

Modelleren en Programmeren

Modelleren en Programmeren Modelleren en Programmeren Jeroen Bransen 11 december 2015 Ingebouwde datastructuren Meer boomstructuren Access specifiers Gebruikersinvoer Codestijl Packages SAT-solver Ingebouwde datastructuren Ingebouwde

Nadere informatie

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

MINICURSUS PHP. Op dit lesmateriaal is een Creative Commons licentie van toepassing Sebastiaan Franken en Rosalie de Klerk Bambara

MINICURSUS PHP. Op dit lesmateriaal is een Creative Commons licentie van toepassing Sebastiaan Franken en Rosalie de Klerk Bambara MINICURSUS PHP Op dit lesmateriaal is een Creative Commons licentie van toepassing. 2017-2018 Sebastiaan Franken en Rosalie de Klerk Bambara PHP Cursus Deze cursus is om de eerste stappen in de wereld

Nadere informatie

Excel voor de beginner (4) Handleiding van Helpmij.nl

Excel voor de beginner (4) Handleiding van Helpmij.nl Excel voor de beginner (4) Handleiding van Auteur: CorVerm Juni 2008 Excel voor beginners deel 4. Zoals we in deel drie hebben beloofd gaan we het in deze ronde hebben over het geven van namen aan (een)

Nadere informatie

Combinatoriek groep 1

Combinatoriek groep 1 Combinatoriek groep 1 Recursie Trainingsdag 3, 2 april 2009 Getallenrijen We kunnen een rij getallen a 0, a 1, a 2,... op twee manieren definiëren: direct of recursief. Een directe formule geeft a n in

Nadere informatie

6.2 VBA Syntax. Inleiding Visual Basic

6.2 VBA Syntax. Inleiding Visual Basic 6.2 VBA Syntax Wij gaan de Visual Basic Editor opnieuw openen, om de instructie die wij zojuist getypt hebben, nader te bekijken. Klik te tab Hulpmiddelen voor databases Klik op Maken Macro s en Code -

Nadere informatie

Access voor beginners - hoofdstuk 25

Access voor beginners - hoofdstuk 25 Access voor beginners - hoofdstuk 25 Handleiding van Auteur: OctaFish Oktober 2014 Werken met Klassemodules Tot nu toe heb ik in de cursus Access veel gewerkt met formulieren, en met procedures en functies.

Nadere informatie

Informatietechnologie 2. JavaScript. Strings, getallen, datums, arrays en loops. Kristof Michiels

Informatietechnologie 2. JavaScript. Strings, getallen, datums, arrays en loops. Kristof Michiels Informatietechnologie 2 JavaScript Strings, getallen, datums, arrays en loops Kristof Michiels In deze presentatie Strings: methods en properties Getallen Datums Arrays Loops 2 / 48 Strings: methods en

Nadere informatie

Modelleren en Programmeren

Modelleren en Programmeren Modelleren en Programmeren Jeroen Bransen 25 november 2015 Herhaling Meer herhaling Recursie Mutuele recursie Objecten Herhaling Fibonacci class Fibonacci { public static void fibonaccitot(int bovengrens)

Nadere informatie

Interactie: Document Object Model en JavaScript. Hoorcollege Webdesign 7 23 mei 2014 Christof van Nimwegen

Interactie: Document Object Model en JavaScript. Hoorcollege Webdesign 7 23 mei 2014 Christof van Nimwegen Interactie: Document Object Model en JavaScript Hoorcollege Webdesign 7 23 mei 2014 Christof van Nimwegen JavaScript WWW was geheel statisch, interactie was alleen volgen van link Javascript maakt interactie

Nadere informatie

http://www.liacs.nl/home/kosters/java/

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

Nadere informatie

Formulier maken en opvangen met php

Formulier maken en opvangen met php Welkom bij mijn PHP tutorial (Deel 2) Ik ga in deze delen PHP uitleggen, dit doe ik in het programma notepad++ (gratis) deze kunt u downloaden van www.richard3332.nl/downloads.php Als u beschikt over dreamweaver

Nadere informatie

JavaScript. F. Vonk versie

JavaScript. F. Vonk versie 2017 JavaScript F. Vonk versie 2 2-1-2017 inhoudsopgave 1 inleiding... - 3-2 programmeerconcepten... - 4-3 instructies en sequenties... - 4-4 strings... - 5-5 variabelen en toekenning... - 10-6 variabelen,

Nadere informatie

Elementaire rekenvaardigheden

Elementaire rekenvaardigheden Hoofdstuk 1 Elementaire rekenvaardigheden De dingen die je niet durft te vragen, maar toch echt moet weten Je moet kunnen optellen en aftrekken om de gegevens van de patiënt nauwkeurig bij te kunnen houden.

Nadere informatie

5. Functies. In deze module leert u:

5. Functies. In deze module leert u: 5. Functies In deze module leert u: - Wat functies zijn; - Functies uitvoeren; - De verschillende functies van Calc kennen. - Naar een ander werkblad verwijzen. U kunt eenvoudige berekeningen, zoals aftrekken,

Nadere informatie

Je gaat leren programmeren en een spel bouwen met de programmeertaal Python. Websites zoals YouTube en Instagram zijn gebouwd met Python.

Je gaat leren programmeren en een spel bouwen met de programmeertaal Python. Websites zoals YouTube en Instagram zijn gebouwd met Python. 1 Je gaat leren programmeren en een spel bouwen met de programmeertaal Python. Websites zoals YouTube en Instagram zijn gebouwd met Python. Voordat je leert programmeren, moet je jouw pc zo instellen dat

Nadere informatie

Leren Programmeren met Visual Basic 6.0 Les 3+4. Hoofdstuk 4 : De Selectie

Leren Programmeren met Visual Basic 6.0 Les 3+4. Hoofdstuk 4 : De Selectie Leren Programmeren met Visual Basic 6.0 Les 3+4 Hoofdstuk 4 : De Selectie Visual Basic 6.0 1 Basisstructuren (herhaling) Sequentie (HK2) : Alle opdrachten gewoon na mekaar uitvoeren. Hier worden geen keuzes

Nadere informatie

start -> id (k (f c s) (g s c)) -> k (f c s) (g s c) -> f c s -> s c

start -> id (k (f c s) (g s c)) -> k (f c s) (g s c) -> f c s -> s c Een Minimaal Formalisme om te Programmeren We hebben gezien dat Turing machines beschouwd kunnen worden als universele computers. D.w.z. dat iedere berekening met natuurlijke getallen die met een computer

Nadere informatie

Inhoud leereenheid 7c. JavaScript: Objecten en functies. Introductie 59. Leerkern 60. Samenvatting 82. Opdrachten 83. Zelftoets 89.

Inhoud leereenheid 7c. JavaScript: Objecten en functies. Introductie 59. Leerkern 60. Samenvatting 82. Opdrachten 83. Zelftoets 89. Inhoud leereenheid 7c JavaScript: Objecten en functies Introductie 59 Leerkern 60 1 Functies 60 1.1 Syntax - samenvatting 60 1.2 Functies definiëren 61 1.3 Functie als parameter (facultatief) 64 1.4 Functie

Nadere informatie

Numerieke benadering van vierkantwortels

Numerieke benadering van vierkantwortels HP Prime Grafische Rekenmachine Numerieke benadering van vierkantwortels Doel: De waarde van een vierkantswortel met een recursieve rij benaderen, het schrijven van een klein programma. Sleutelwoorden:

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

Vaak wil je een code schrijven, waar je verschillende acties uitvoeren voor verschillende beslissingen. Je kan daarbij keuzestructuren gebruiken.

Vaak wil je een code schrijven, waar je verschillende acties uitvoeren voor verschillende beslissingen. Je kan daarbij keuzestructuren gebruiken. PHP Les 5 : Interessante links: o http://www.dbzweb.be/moermant/ o http://www.ivobrugge.be/cursusweb/html4/formulieren.asp Vaak wil je een code schrijven, waar je verschillende acties uitvoeren voor verschillende

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

3. Lineaire vergelijkingen

3. Lineaire vergelijkingen 3. Lineaire vergelijkingen Lineaire vergelijkingen De vergelijking 2x = 3 noemen we een eerstegraads- of lineaire vergelijking. De onbekende x komt er namelijk tot de eerste macht in voor. Een eerstegraads

Nadere informatie

Modelleren en Programmeren

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

Nadere informatie

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

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

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

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

Variabelen gebruiken in ons programma

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

Stoomcursus. wiskunde A. Rekenregels voor vereenvoudigen. Voorbereidende opgaven VWO ( ) = = ( ) ( ) ( ) = ( ) ( ) = ( ) = = ( )

Stoomcursus. wiskunde A. Rekenregels voor vereenvoudigen. Voorbereidende opgaven VWO ( ) = = ( ) ( ) ( ) = ( ) ( ) = ( ) = = ( ) Voorbereidende opgaven VWO Stoomcursus wiskunde A Tips: Maak de voorbereidende opgaven voorin in een van de A4-schriften die je gaat gebruiken tijdens de cursus. Als een opdracht niet lukt, werk hem dan

Nadere informatie

atica inform Javascript

atica inform Javascript informatica Javascript Op dit lesmateriaal is een Creative Commons licentie van toepassing. 2010 Remie Woudt remie.woudt@gmail.com 2013 François Vonk (Javascript geïsoleerd en edits) Inhoudsopgave 1programmeren...4

Nadere informatie

Programmeren voor het web met PHP

Programmeren voor het web met PHP Programmeren voor het web met PHP De meestgebruikte programmeertaal voor websites is PHP. Het is een heel handige taal waarmee je een eigen slimme website kunt bouwen. Je gaat nu leren hoe PHP werkt, en

Nadere informatie

inleiding theoretische informatica practicum 1 deadline woensdag 20 februari 2008 om uur

inleiding theoretische informatica practicum 1 deadline woensdag 20 februari 2008 om uur 1 Inleiding inleiding theoretische informatica 2007-2008 practicum 1 deadline woensdag 20 februari 2008 om 14.00 uur Dit practicum is een kennismaking met functioneel programmeren. Twee belangrijke functionele

Nadere informatie

Programmeerstructuren met App Inventor

Programmeerstructuren met App Inventor Programmeerstructuren met App Inventor Kevin Krul, Universiteit Utrecht Roncalli, Bergen op Zoom Inhoud: Les 1: Introductie tot App Inventor, when statement en variabelen. Les 2: Introductie if-statement

Nadere informatie

BEGINNER JAVA Inhoudsopgave

BEGINNER JAVA Inhoudsopgave Inhoudsopgave 6 Configuratie Hallo wereld! Praten met de gebruiker Munt opgooien Voorwaarden Lussen......6 Configuratie Met deze Sushi kaarten ga je een simpel spel maken met één van de meest populaire

Nadere informatie

Combinatoriek groep 2

Combinatoriek groep 2 Combinatoriek groep 2 Recursie Trainingsdag 3, 2 april 2009 Homogene lineaire recurrente betrekkingen We kunnen een rij getallen a 0, a 1, a 2,... op twee manieren definiëren: direct of recursief. Een

Nadere informatie

Hoofdstuk 2: Werken met variabelen

Hoofdstuk 2: Werken met variabelen Programmeren in Microsoft Visual Basic 2010 Express, lessenserie voor het voortgezet onderwijs HAVO/VWO David Lans, Emmauscollege, Vespucci College, Marnix Gymnasium Rotterdam, december 2011 Hoofdstuk

Nadere informatie

Info-books. Toegepaste Informatica. Deel 20 : Algoritmen en programmeren in Access en Excel (Basis) AL20. Jos Gils Erik Goossens

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

Hoofdstuk 2: Werken met variabelen

Hoofdstuk 2: Werken met variabelen Programmeren in Microsoft Visual Basic 6.0, lessenserie voor het voortgezet onderwijs HAVO/VWO David Lans, Emmauscollege, Marnix Gymnasium Rotterdam, februari 2001 Hoofdstuk 2: Werken met variabelen 2.0

Nadere informatie

2.4.4 LibreOffice Werkblad Mac

2.4.4 LibreOffice Werkblad Mac 2.4.4 LibreOffice Werkblad Mac Deze cursus bestaat uit 4 delen. 1. Werkblad gebruiken voor berekeningen 2. Werkblad gebruiken voor het maken van lijsten 3. Werkblad gebruiken voor een (eenvoudige) boekhouding

Nadere informatie

Inleiding tot programmeren: Javascript

Inleiding tot programmeren: Javascript Inleiding tot programmeren: Javascript Een definitie JavaScript is een scripttaal met objectgeoriënteerde mogelijkheden. Deze geïnterpreteerde programmeertaal is vooral gericht op het gebruik in webpagina

Nadere informatie

Practicum Programmeerprincipes

Practicum Programmeerprincipes OPLOSSINGEN REEKS 1 KENNISMAKING MET PICO Evaluatie van expressies Practicum Programmeerprincipes 2009-2010 fvdbergh@vub.ac.be Oefening 1. Oplossing van deze kennismakingsoefening gegeven in de les. Oefening

Nadere informatie

Rapporten. Labels en Rapporten in Atlantis 1. Atlantis heeft twee manieren om output te genereren: 1. labels 2. rapporten (reports)

Rapporten. Labels en Rapporten in Atlantis 1. Atlantis heeft twee manieren om output te genereren: 1. labels 2. rapporten (reports) Labels en Rapporten in Atlantis 1 Atlantis heeft twee manieren om output te genereren: 1. labels 2. rapporten (reports) Rapporten Een rapport is eigenlijk altijd een tekst bestand, die vorm wordt gegeven

Nadere informatie