HOOFDSTUK 3. Imperatief programmeren. 3.1 Stapsgewijs programmeren. 3.2 If Then Else. Module 4 Programmeren
|
|
- Maarten Jacobs
- 8 jaren geleden
- Aantal bezoeken:
Transcriptie
1 HOOFDSTUK 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 doen, net als een algoritme of een PSD. 3.2 If Then Else Bij imperatief programmeren omschrijf je in een code stapsgewijs wat een programma moet doen, net als een algoritme en PSD. Wanneer een PSD selecties (keuzes) bevat, deelt de lijn van het programma zich op met de verschillende antwoorden op het vraagstuk. Denk nog maar even terug aan dit schema: is het vuur uit? ja vuur aansteken nee Als je imperatief gaat programmeren, krijg je veel met zulke keuzes of voorwaardes te maken. Hiertoe zijn er de if then -statements en de else -statements. vraag leeftijd : toegangsprijs leeftijd <12 ja nee We kijken weer even naar het voorbeeld leeftijd >=60 dat de procedure beschrijft voor het bepalen van de toegangsprijs is 5 euro voor een ja pretpark. nee toegang is 5 euro toegang is 10 euro vertel toegang ALS leeftijd < 12 DAN toegang := 5 euro ANDERS druk af Dit bestand bestaat al. ALS leeftijd druk af Toch >= 60 onder deze naam opslaan? (J/N) DAN wacht op toetsindruk De code wordt sequentieel, van boven naar toegang := 5 euro ANDERS totdat een J of N is ingedrukt beneden afgewerkt. Je ziet dat er allerlei keuzes toegang := 10 euro is ingedrukte toets J? gemaakt moeten worden. Uiteindelijk is het EINDE-ALS ja resultaat dat nee mensen jonger dan 12 en ouder EINDE-ALS dan, of net zo oud als 60, voor de toegang 5 euro sla het bestand op betalen; de overige leeftijden betalen 10 euro. Niet elke If heeft een Else, maar wel elke Else een If Het if-statement is niet onlosmakelijk verbonden aan het else-statement; het is niet noodzakelijk dat elke if-statement ook een else heeft. Aan de andere kant hoort elke elsestatement wel bij een if. 223
2 Informatie Wijze van weergeven Merk op dat alle operaties binnen een statement iets naar rechts zijn geplaatst. Dit principe noemen we inspringen. In de meeste programmeertalen zal het programma ook werken als je dit niet doet, maar het is belangrijk om het wel te doen, omdat de code er overzichtelijker van wordt. 3.3 Lus Wanneer een programma een iteratie (herhaling) bevat, zeggen we ook wel dat er sprake is van een lus (of loop in het Engels). De operaties die in een lus zitten worden namelijk uitgevoerd zolang aan een bepaalde voorwaarde voldaan wordt. De meest bekende is de while-lus, hieronder aangegeven als ZOLANG. Hier zie je een voorbeeld van een lus: getal := 0 ZOLANG getal < 3 getal := getal + 1 EINDE-ZOLANG In dit voorbeeld wordt een getal net zolang opgehoogd totdat deze niet meer kleiner is dan 3. Met andere woorden: de lus stopt zodra het getal 3 is geworden. Oneindige lus Wanneer de voorwaarde van een while-lus nooit onwaar wordt, zal de lus niet vanzelf stoppen (het programma blijft hangen ). Dit noem je een oneindige lus. Meestal is dit niet de bedoeling en heeft de programmeur een fout in de voorwaarde gemaakt, of ergens anders, of allebei. 3.4 Booleaanse expressies In de eerder gegeven voorbeelden heb je (misschien onbewust) al kennis gemaakt met Booleaanse expressies. Informatie Een Booleaanse expressie is een expressie die de waarden true of false aan kan nemen. De naam Booleaans komt van de wiskundige en filosoof George Boole, die het redeneren in waarden als true en false heeft geïntroduceerd in de 19e eeuw. 224
3 De voorwaarde van een if-statement is een Booleaanse expressie. Als die de de waarde true heeft, wordt de direct onderliggende code uitgevoerd en niet de code onder de else - als de else aanwezig is. Als de Booleaanse expressie de waarde false heeft, is het andersom. Symbolen Booleaanse logica De symbolen in onderstaande tabel worden vaak gebruikt in de Booleaanse expressies van programmeertalen. Symbool Naam Gebruik > groter-dan x > y is true als x groter is dan y >= groter-danof-gelijk-aan x >= y is true als x groter is dan y of net zo groot < kleiner-dan y < y is true als x kleiner is dan y <= kleiner-danof-gelijk-aan x <= y is true als x kleiner is dan y of net zo groot not not not x is true als x false is en andersom; de Booleaanse waarde van x wordt geïnverteerd and and x and y is true als x en y beide true zijn or or x or y is true als x of y true is (of als ze allebei true zijn) xor exclusive or x xor y is true als x of y true is (en niet als ze allebei true zijn) Misschien had je het al opgemerkt: de code van de toegangsprijs van het pretpark kunnen we met deze logica korter omschrijven: ALS leeftijd < 12 OF leeftijd >= 60 DAN toegang := 5 euro ANDERS toegang := 10 euro EINDE-ALS Wijze van weergeven Bij het opstellen van een Booleaanse expressie moet je zorgvuldig te werk gaan. Een verschil in de volgorde van de expressie kan bijvoorbeeld hele andere resultaten opleveren. Het is daarom veilig om delen van je expressie te voorzien van haakjes: ( en ). Door delen tussen haakjes te zetten, geef je aan dat deze als geheel geïnterpreteerd moeten worden. 225
4 Waarheidstabel De volgende expressie: \(x EN y) OF z is niet hetzelfde als: x EN (y OF z) Je kunt dit gemakkelijk zien door voor deze expressies een waarheidstabel te maken. Dit is een tabel waarin je aangeeft wanneer de expressie true of false is bij welke waarden. Hieronder zijn van beide expressies de verschillende waarheidstabellen weergegeven. (x EN y) OF z x EN (y OF z) x y z Waarde van expressie x y z Waarde van expressie true true true true true true true true true true false true true true false true true false true true true false true true true false false false true false false false false true true true false true true false false true false false false true false false false false true true false false true false false false false false false false false false Informatie Meestal worden in waarheidstabellen de termen true en false vervangen door respectievelijk 1 en 0. Dit kan zo n tabel een stuk beknopter maken. 3.5 Variabelen Een variabele is een element dat een bepaalde waarde aan kan nemen. Een voorbeeld van een variabele is de toegangsprijs van een pretpark. De waarde die een variabele kan hebben, is afhankelijk van het type van de variabele. Er zijn verschillende typen die voorkomen in verschillende programmeertalen, maar doorgaans zijn de volgende typen in ieder geval aanwezig: Geheel getal Dit wordt een integer genoemd, vaak afgekort tot int. 42 is bijvoorbeeld een heel getal. 226
5 Kommagetal Dit wordt vaak een double of fl o a t genoemd. Bijvoorbeeld: 109,75. In veel programmeertalen moet je deze getallen op z n Engels noteren, met een decimale punt. Karakter Dit noemt men een character of kortweg char (spreek uit: kar). Een karakter kan elk ANSI-, EBCDIC- of Unicode-teken zijn, bijvoorbeeld $. Boolean Dit wordt ook wel bool genoemd (Nederlands: booelaanse). Een boolean kan alleen maar true of false zijn. Sommige programmeertalen (waaronder C en C++) laten hier ook gehele getallen in toe, waarbij 0 staat voor false en alle andere getallen voor true. Een apart soort variabele is de string. Dit is een reeks karakters, bijvoorbeeld tijger of $2, Arrays De meeste programmeertalen bieden de mogelijkheid om arrays (Nederlands: rij) te maken. Een array is een geordende rij van variabelen van hetzelfde type. Zo kun je bijvoorbeeld een array van gehele getallen maken. De variabelen van een array zijn genummerd; het volgnummer noemen we de index. In veel programmeertalen begint de indexering van een array altijd met 0 (en niet met 1). De code: rij_van_getallen := [32, 59, 825, 9042] De indexering: rij_van_getallen index: waarde: Functies Je kunt een functie (een verwant begrip is procedure) gebruiken als je een bepaald stuk code vaker moet gebruiken of als je een programma overzichtelijker wilt maken. Met een functie maak je een subprogrammaatje. Als in het programma de naam van een functie staat, wordt daar het subprogrammaatje dat erbij hoort, uitgevoerd. We noemen dat het aanroepen van de functie. 227
6 Van een functie moeten de volgende zaken worden gedefinieerd: De naam Elke functie moet een unieke naam hebben. Sommige programmeertalen laten toe dat namen van functies vaker voorkomen, zolang de parameters verschillen. Dit principe noem je overloading. De parameters Dit zijn speciale variabelen die een waarde krijgen bij het aanroepen van de functie. Zo kan de functie werken met de meegegeven waarden. Een functie kan nul of meer parameters hebben. Het returntype Dit is het waarde-type dat de functie na uitvoeren oplevert. Een functie kan maar één returntype hebben. Deze waarde wordt op de plek van de aanroep verder gebruikt. De body Dit is de code die uitgevoerd wordt als de functie aangeroepen wordt. In dit voorbeeld wordt voor elke variabele, het type van de variabele gespecificeerd (net als bij de meeste programmeertalen). som(int getal1, int getal2) : int int optelling := getal1 + getal2 return optelling De functie som telt twee getallen van het type int bij elkaar op en geeft het resultaat (wat hier de naam optelling heeft gekregen) als int terug. De termen getal1 en getal2 zijn de parameters en worden gescheiden door een komma. We kunnen nu naar deze functie refereren, of anders gezegd: we kunnen deze functie aanroepen en het resultaat in een andere variabele stoppen. Bijvoorbeeld: int getala := som(10, 20) int getalb := som(getala, 70) int getalc := som(som(50, 50), getalb) Als bovenstaande code uitgevoerd zou worden, zou na afloop getala de waarde 30 hebben, getalb 100 en getalc 200. Je ziet: na een aanroep van een functie kan het resultaat precies zo worden behandeld als het returntype van de functie. In dit geval is het returntype van de functie een integer en kun je dus dit resultaat direct weer gebruiken, zoals op de derde regel hier ook gebeurt. 228
7 3.8 Parameters en argumenten We hebben eerder aangegeven dat getal1 en getal2 de parameters zijn van de functie som. Bij het aanroepen worden deze parameters ingevuld door, wat we noemen, de argumenten. Een argument is een waarde die meegegeven wordt bij een functie-aanroep. We herhalen het voorbeeld uit de vorige paragraaf: int getala := som(10, 20) int getalb := som(getala, 70) int getalc := som(som(50, 50), getalb) Als bij het aanroepen van een functie een variabele meegegeven wordt - zoals in ons voorbeeld op de tweede regel het geval is - dan wordt niet de variabele zelf meegestuurd, maar de waarde van de variabele. Omdat de waarde wordt meegegeven, verandert de variabele zelf dus niet na het aanroepen van een methode, ongeacht wat de methode met de parameters doet. We proberen dit in het volgende voorbeeld te verduidelijken. We definiëren eerst een functie (die eigenlijk niets zinnigs doet): zomaareenfunctie(int eengetal) : int eengetal := 999 return 0 Vervolgens roepen we deze aan: mijneerstegetal := 5 mijntweedegetal := zomaareenfunctie(mijneerstegetal) Na het zogenaamd uitvoeren van deze code zal mijneerstegetal nog altijd de waarde 5 hebben en mijntweedegetal de waarde
8 3.9 Void Alle voorbeeldfuncties tot nu toe hadden een returnwaarde, namelijk een int. Maar een functie hoeft niet per se een returnwaarde te hebben. Dat geef je aan met het returntype void. Void is eigenlijk geen variabele-type, maar is eerder de afwezigheid van een waarde. Letterlijk vanuit het Engels vertaald betekent void dan ook leegte. Hieronder is een voorbeeldfunctie zonder returnwaarde gedefinieerd: zeghallo() : void print( hallo ) Deze functie heeft geen parameters en geen returnwaarde. Bovendien wordt er een andere functie aangeroepen met de naam print, waarbij een string als argument wordt meegegeven Syntax De syntaxis (Engels: syntax) is de grammatica van een programmeertaal. Hij beschrijft hoe de code er in een bepaalde programmeertaal uit moet komen te zien, wat de grammaticale regels zijn. Elke programmeertaal heeft een eigen syntax, maar sommige programmeertalen hebben onderling veel syntactische overeenkomsten, zoals C, C++, Java, C#. De reden dat veel programmeertalen een overeenkomstige syntax hebben, is om het programmeurs makkelijker te maken een andere taal te leren. int som(int getal1, int getal2) { return getal1 + getal2; } van een functie die zou werken in C, C++, Java en C#. 230
9 3.11 Vragen en opdrachten Open vragen 1. Wanneer zal van een else-statement de inhoud worden uitgevoerd? Geef de waarheidstabel van de volgende expressie: x OR (NOT y). a. Noem de Engelse namen van de verschillende typen variabelen die je kent. b. Wat valt je op als je de string met de lijst vergelijkt? 2. a. Welke eigenschappen moet je van een functie of procedure definiëren? b. Wat is het verschil tussen een parameter en een argument? 3. Leg in je eigen woorden uit wat syntax betekent Meerkeuzevragen 1. Welke van onderstaande beweringen over lijsten is niet waar? a. De eerste waarde van een lijst staat altijd op index 0. b. Een lijst heeft een volgorde waarin de waardes gerangschikt zijn. c. In één lijst kunnen verschillende waardes worden opgeslagen van verschillende typen. d. Een lijst wordt ook wel array genoemd. 2. Bekijk dit voorbeeld: int a = 2; int b = 4; int c = 6; vermenigvuldig(int x, int y) : int return x * y c := vermenigvuldig(a, b) Stel dat deze code uitgevoerd zou worden, welke waardes zouden dan correct zijn ná het uitvoeren: a. x is 2, y is 4 en c is 6. b. a is 2, b is 4 en c is 8. c. b is 4, y is 4 en c is 4. d. a is 2, b is 4 en c is Welke van onderstaande beweringen over lussen is niet waar? a. Van een lus wordt de booleaanse expressie herhaaldelijk gecontroleerd. b. Een lus is vergelijkbaar met de iteratie van een PSD. c. Een ander woord voor lus is loop. d. Bij een oneindige lus wordt niet aan de booleaanse expressie voldaan. 231
10 4. Van de volgende booleaanse expressie zijn de operatoren vervangen door cijfers. De waarden voor x en y zijn: x = true, y = false. Welke operatoren kunnen hier staan om de expressie de waarde true te laten zijn? x 1 y 2 3 (x 4 y) a. 1 = XOR, 2 = AND, 3 = OR, 4 = XOR b. 1 = OR, 2 = AND, 3 = NOT 4 = AND c. 1 = AND, 2 = AND, 3 = NOT, 4 = AND d. 1 = OR, 2 = XOR, 3 = NOT, 4 = AND Korte opdrachten 1. Zoek ten minste vijf syntactische regels voor de programmeertaal Java en beschrijf deze kort in je eigen woorden. 2. a. Schrijf zelf code voor het zetten van koffie. Maak hierbij gebruik van variabelen, ten minste één lus en ten minste één functie. b. Beschrijf vervolgens stapsgewijs de werking van jouw code. Geef hierbij onder andere aan welke variabelen op welk moment welke waarde hebben. 232
11 3.12 Samenvatting is het stapsgewijs schrijven van instructies die van boven naar beneden uitgevoerd worden. Kenmerken hierbij zijn: if-, then-, else-statemens: gebruikt om voorwaarden aan variabelen te stellen lussen: herhalingen, denk hierbij aan de while-lus functies of procedures: kleine deelprogramma s om het programma overzichtelijker te maken en herhalende code slechts één keer te hoeven schrijven. Een parameter is een variabele die gedefiniëerd is bij een functie. Een argument is de waarde die je meegeeft bij het aanroepen van een functie. Er zijn verschillende typen variabelen: int: heel getal double of float: kommagetal char: een karakterteken bool of boolean: heeft de waarde true of false. Een string is een reeks van karakters. Een lijst (of array) is een reeks van waardes van één type variabele. De syntax van een programmeertaal beschrijft de grammaticaregels waaraan een programmeur zich voor die taal moet houden. 233
12 AANTEKENINGEN Fundament Informatica deel 1 234
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 informatieHOOFDSTUK 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 informatieHOOFDSTUK Stapsgewijs programmeren. I m peratief programme re n. 3.2 If Then Else. Joorbee1d: toegangsprijs
HOOFDSTUK 3 m peratief programme re n 3.1 Stapsgewijs programmeren ModuLe 4 Programmeren De programmeerta[en die tot nu toe genoemd zijn, zin imperatieve of proceduree programmeertalen. mperatief programmeren
Nadere informatieVariabelen en statements in ActionScript
Ontwikkelen van Apps voor ios en Android Variabelen en statements in ActionScript 6.1 Inleiding Als we het in de informatica over variabelen hebben, bedoelen we een stukje in het geheugen van de computer
Nadere informatieModelleren 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 informatieZelftest 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 informatie1 Inleiding in Functioneel Programmeren
1 Inleiding in Functioneel Programmeren door Elroy Jumpertz 1.1 Inleiding Aangezien Informatica een populaire minor is voor wiskundestudenten, leek het mij nuttig om een stukje te schrijven over een onderwerp
Nadere informatieProgrammeren in Java les 3
4 september 2015 Deze les korte herhaling vorige week loops methodes Variabelen Soorten variabelen in Java: integer: een geheel getal, bijv. 1,2,3,4 float: een gebroken getal, bijv. 3.1415 double: een
Nadere informatieVoorbeeldtentamen Inleiding programmeren (IN1608WI), Oktober 2003, , Technische Universiteit Delft, Faculteit EWI, Afdeling 2.
Voorbeeldtentamen Inleiding programmeren (IN1608WI), Oktober 2003, 14.00-15.30, Technische Universiteit Delft, Faculteit EWI, Afdeling 2. Dit tentamen bestaat uit twee delen. Deel 1 (14.00-14.45, gesloten
Nadere informatieOEFENINGEN 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 informatieLeren 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 informatieOEFENINGEN 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 informatieOEFENINGEN 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 informatieSmall 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 informatieDeel 1: Arduino kennismaking. Wat is een microcontroller, structuur van een programma, syntax,
Deel 1: Arduino kennismaking Wat is een microcontroller, structuur van een programma, syntax, Wat is een microcontroller Wat is een microcontroller? Microcontroller = kleine dedicated computer. - Beperkt
Nadere informatiePYTHON 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 informatieVAN HET PROGRAMMEREN. Inleiding
OVERZICHT VAN HET PROGRAMMEREN Inleiding Als je leert programmeren lijkt het nogal overweldigend om die eerste stappen te doorworstelen. Er zijn dan ook heel wat programmeertalen (Java, Ruby, Python, Perl,
Nadere informatieDatatypes Een datatype is de sort van van een waarde van een variabele, veel gebruikte datatypes zijn: String, int, Bool, char en double.
Algemeen C# Variabele Een variabele is een willekeurige waarde die word opgeslagen. Een variabele heeft altijd een datetype ( De soort waarde die een variabele bevat). Datatypes Een datatype is de sort
Nadere informatiePython. 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 informatieJavascript oefenblad 1
Leer de basis van Javascript. Javascript oefenblad 1 Niels van Velzen Javascript oefenblad 1 Pagina 2 Inleiding Javascript is niet altijd even makkelijk. Vooral aan het begin is het even wennen hoe de
Nadere informatieProgrammeren met Arduino-software
Programmeren met Arduino-software De software waarin we programmeren is Arduino IDE. Deze software is te downloaden via www.arduino.cc. De programmeertaal die hier gebruikt wordt, is gebaseerd op C en
Nadere informatieBEGINNER 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 informatieEen eenvoudig algoritme om permutaties te genereren
Een eenvoudig algoritme om permutaties te genereren Daniel von Asmuth Inleiding Er zijn in de vakliteratuur verschillende manieren beschreven om alle permutaties van een verzameling te generen. De methoden
Nadere informatie[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 informatieControle 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 informatiePSD. Reeksen van logische procedures om problemen op te lossen in een eindig aantal stappen.
Inleiding Computers en andere digitale apparatuur is tegenwoordig niet meer weg te denken in de huidige samenleving. Zonder programma s zijn deze apparaten echter niets waard. Het zijn de programma s die
Nadere informatieArduino Cursus, Deel 2 Programmeren. Simon Pauw, ZB45, Amsterdam
Arduino Cursus, Deel 2 Programmeren Simon Pauw, ZB45, Amsterdam Programmeren Geen zorgen als je niet alles begrijpt. Doel: Het snappen van bestaande code. Meeste kennis ook toepasbaar buiten de Arduino
Nadere informatie17 Operaties op bits. 17.1 Bitoperatoren en bitexpressies
17 Operaties op bits In hoofdstuk 1 is gezegd dat C oorspronkelijk bedoeld was als systeemprogrammeertaal om het besturingssysteem UNIX te implementeren. Bij dit soort toepassingen komt het voor dat afzonderlijke
Nadere informatieVakgroep CW KAHO Sint-Lieven
Vakgroep CW KAHO Sint-Lieven Objecten Programmeren voor de Sport: Een inleiding tot JAVA objecten Wetenschapsweek 20 November 2012 Tony Wauters en Tim Vermeulen tony.wauters@kahosl.be en tim.vermeulen@kahosl.be
Nadere informatieLab Webdesign: Javascript 3 maart 2008
H5: OPERATORS In dit hoofdstuk zullen we het hebben over de operators (of ook wel: operatoren) in JavaScript waarmee allerlei rekenkundige en logische bewerkingen kunnen worden uitgevoerd. Daarbij zullen
Nadere informatieEen 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 informatieJava 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 informatieProgrammeren (1) Examen NAAM:
Schrijf al je antwoorden op deze vragenbladen (op de plaats die daarvoor is voorzien) en geef zowel klad als net af. Bij heel wat vragen moet je zelf Java-code schrijven. Hou dit kort en bondig. Je hoeft
Nadere informatiehttp://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 informatieHet 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 informatie6,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[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 informatieUNIVERSITEIT ANTWERPEN FACULTEIT WETENSCHAPPEN DEPARTEMENT WISKUNDE-INFORMATICA OBERON CODE CONVENTIONS
UNIVERSITEIT ANTWERPEN FACULTEIT WETENSCHAPPEN DEPARTEMENT WISKUNDE-INFORMATICA OBERON CODE CONVENTIONS Laatste aanpassing: 15 oktober 2003 Inhoudsopgave 1 Bestandsnamen 3 2 Organizatie Bestanden 3 3 Indentatie
Nadere informatieAPPLICATIEBOUW 3E COLLEGE: OBJECT GEORIËNTEERD PROGRAMMEREN, METHODEN, PARAMETERS, SCOPE VAN VARIABELEN. Onderdeel van SmartProducts
APPLICATIEBOUW 3E COLLEGE: OBJECT GEORIËNTEERD PROGRAMMEREN, METHODEN, PARAMETERS, SCOPE VAN VARIABELEN Onderdeel van SmartProducts INHOUD COLLEGE 3 Scope van variabelen {3.9} Class ontwerpen en maken,
Nadere informatieimport java.io.*; één klasse public class Hallo { public static void main (String[] a) ...met één functie System.out.println("Hallo!
Voorbeeld Java-programma import java.io.*; één klasse...met één functie...met één opdracht public class Hallo { public static void main (String[] a) { System.out.println("Hallo!"); accolades begrenzen
Nadere informatieVAN 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 informatieProgrammeermethoden 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 informatieUitleg: 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 informatieInleiding Programmeren 2
Inleiding Programmeren 2 Gertjan van Noord November 26, 2018 Stof week 3 nogmaals Zelle hoofdstuk 8 en recursie Brookshear hoofdstuk 5: Algoritmes Datastructuren: tuples Een geheel andere manier om te
Nadere informatieOpdracht 3: Betere oplossingen
Opdracht 3: Betere oplossingen Algoritmisch Denken en Gestructureerd Programmeren in Greenfoot c 2015 Renske Smetsers-Weeda & Sjaak Smetsers Op dit werk is een creative commons licentie van toepassing.
Nadere informatieEen 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 informatieModelleren 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 informatieProgrammeermethoden NA. Week 3: Controlestructuren
Programmeermethoden NA Week 3: Controlestructuren Kristian Rietveld http://liacs.leidenuniv.nl/~rietveldkfd/courses/prna/ Bij ons leer je de wereld kennen 1 Inleveren opdracht 1 Lever digitaal sxxxxxxx-syyyyyyy-opdr1.py
Nadere informatieOpdracht 3: Betere oplossingen
Opdracht 3: Betere oplossingen Algoritmisch Denken en Gestructureerd Programmeren in Greenfoot c 2015 Renske Smetsers-Weeda & Sjaak Smetsers Op dit werk is een creative commons licentie van toepassing.
Nadere informatieDe keuzestructuur. Versie DD
De keuzestructuur Versie DD Tot nu toe Programma in rechte lijn = sequentie of opeenvolging Nieuw Vertakking in parcours = selectie of keuzestructuur Controlestructuren Opeenvolging = sequentie Keuze =
Nadere informatieVerzamelingen, Lijsten, Functioneel Programmeren
Verzamelingen, Lijsten, Functioneel Programmeren Jan van Eijck jve@cwi.nl Stage Ignatiuscollege, 17 mei 2010 Samenvatting In deze lezing gaan we in op de overeenkomsten en verschillen tussen verzamelingen
Nadere informatieConstanten. Variabelen. Expressies. Variabelen. Constanten. Voorbeeld : varid.py. een symbolische naam voor een object.
een symbolische naam voor een object. Variabelen Constanten Variabelen Expressies naam : geeft de plaats in het geheugen aan waarde : de inhoud van het object identifier : een rij van letters en/of cijfers
Nadere informatiePropositielogica Het maken van een waarheidstabel
Informatiekunde naam datum Propositielogica Het maken van een waarheidstabel Eindhoven, 4 juni 2011 De propositielogica Zoekopdrachten met de operatoren AND, OR en zijn zogenaamde Booleaanse expressies.
Nadere informatieJe 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 informatieMINICURSUS 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 informatieDeeltentamen 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 informatieTentamen Object Georiënteerd Programmeren TI1200 30 januari 2013, 9.00-12.00 Afdeling SCT, Faculteit EWI, TU Delft
Tentamen Object Georiënteerd Programmeren TI1200 30 januari 2013, 9.00-12.00 Afdeling SCT, Faculteit EWI, TU Delft Bij dit tentamen mag je geen gebruik maken van hulpmiddelen zoals boek of slides. Dit
Nadere informatieCollege Notatie, Recursie, Lijsten
College 2016-2017 2. Notatie, Recursie, Lijsten Doaitse Swierstra (Jeroen Bransen) Utrecht University September 13, 2016 Functieapplicatie functieapplicatie associeert naar links: als x in f x y moet kiezen
Nadere informatieInformatica: C# WPO 11
Informatica: C# WPO 11 1. Inhoud Pass by reference (ref, out), recursie, code opdelen in verschillende codebestanden 2. Oefeningen Demo 1: Swapfunctie Demo 2: TryParse(int) Demo 3: Recursion Tree Demo
Nadere informatieCollege Introductie
College 2016-2017 Introductie Doaitse Swierstra (Jeroen Bransen) Utrecht University September 13, 2016 Waarom is FP anders? in plaats van opdrachten die na elkaar moeten worden uitgevoerd, definiëren we
Nadere informatieDE INTERACTIEVE SHELL
Hoofdstuk2 De interactieve shell 6 Hoofdstuk 2 DE INTERACTIEVE SHELL In dit hoofdstuk behandelen we: Integers (gehele getallen) en getallen met drijvende komma Expressies Waarden Operatoren Het evalueren
Nadere informatieTweede deeltentamen Mobiel programmeren - versie 1 Vrijdag 2 februari 2018, uur
Tweede deeltentamen Mobiel programmeren - versie 1 Vrijdag 2 februari 2018, 8.30-10.30 uur Schrijf op elk ingeleverd blad je naam. Schrijf op het eerste blad ook je studentnummer en het aantal ingeleverde
Nadere informatieInleiding Programmeren 2
Inleiding Programmeren 2 Gertjan van Noord November 28, 2016 Stof week 3 nogmaals Zelle hoofdstuk 8 en recursie Brookshear hoofdstuk 5: Algoritmes Datastructuren: tuples Een geheel andere manier om te
Nadere informatieOPDRACHT Opdracht 2.1 Beschrijf in eigen woorden wat het bovenstaande PSD doet.
Les C-02: Werken met Programma Structuur Diagrammen 2.0 Inleiding In deze lesbrief bekijken we een methode om een algoritme zodanig structuur te geven dat er gemakkelijk programmacode bij te schrijven
Nadere informatieUitwerking tentamen Analyse van Algoritmen, 29 januari
Uitwerking tentamen Analyse van Algoritmen, 29 januari 2007. (a) De buitenste for-lus kent N = 5 iteraties. Na iedere iteratie ziet de rij getallen er als volgt uit: i rij na i e iteratie 2 5 4 6 2 2 4
Nadere informatieUitwerking 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 informatieVoorbeeld: Simulatie van bewegende deeltjes
Voorbeeld: Simulatie van bewegende deeltjes Simulatie - object Ruimte - objecten Deeltje - objecten Button - objecten Simulatie Samenhang van objecten sim geërfd van Form stap zelf gedeclareerd auto r1
Nadere informatieProgrammeermethoden NA. Week 5: Functies (vervolg)
Programmeermethoden NA Week 5: Functies (vervolg) Kristian Rietveld http://liacs.leidenuniv.nl/~rietveldkfd/courses/prna2016/ Functies Vorige week bekeken we functies: def bereken(a, x): return a * (x
Nadere informatieinleiding 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 informatieProgrammeermethoden 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 informatieModelleren 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 informatieKennismaken Greenfoot
HOOFDSTUK 1 Kennismaken met Greenfoot onderwerpen: de interface van Greenfoot, omgaan met objecten, methodes aanroepen, een scenario uitvoeren concepten: object, klasse, methode-aanroep, parameter, retourwaarde
Nadere informatieOEFENINGEN 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 informatieInformatie over. 5VWO DT51: JavaLogo. Casper Bezemer. Toetsweek 1 13 oktober 2016
Informatie over 5VWO DT51: JavaLogo Casper Bezemer Toetsweek 1 13 oktober 2016 1 Informatie Voor toets DT51 wordt jou gevraagd Java(Logo) programma s te schrijven. De eerste opdracht is een Krimpfiguur,
Nadere informatieProgrammeermethoden NA. Week 5: Functies (vervolg)
Programmeermethoden NA Week 5: Functies (vervolg) Kristian Rietveld http://liacs.leidenuniv.nl/~rietveldkfd/courses/prna/ Bij ons leer je de wereld kennen 1 Functies Vorige week bekeken we functies: def
Nadere informatieHoofdstuk 7: Werken met arrays
Programmeren in Microsoft Visual Basic 6.0, lessenserie voor het voortgezet onderwijs HAVO/VWO David Lans, Emmauscollege, Marnix Gymnasium Rotterdam, januari 2004 Hoofdstuk 7: Werken met arrays 7.0 Leerdoel
Nadere informatieGEDETAILLEERDE 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 informatieStroomschema s maken op papier
1 Stroomschema s maken op papier Een programma direct maken in Python, gaat vaak wel goed als het een klein programma is. Als het programma groter en moeilijker is, is het lastig om goed te zien welk commando
Nadere informatie10 Meer over functies
10 Meer over functies In hoofdstuk 5 hebben we functies uitgebreid bestudeerd. In dit hoofdstuk bekijken we drie andere aspecten van functies: recursieve functies dat wil zeggen, functies die zichzelf
Nadere informatieArrays. Complexe datastructuren. Waarom arrays. Geen stijlvol programma:
Geen stijlvol programma: Complexe datastructuren Arrays vijf verschillende variabelen voor iets dat als één rij getallen bestempeld wordt; onbruikbaar wanneer het over meer getallen (bijvoorbeeld ) gaat.
Nadere informatieHaskell: programmeren in een luie, puur functionele taal
Haskell: programmeren in een luie, puur functionele taal Jan van Eijck jve@cwi.nl 5 Talen Symposium, 12 juli 2010 Samenvatting In deze mini-cursus laten we zien hoe je met eindige en oneindige lijsten
Nadere informatieModelleren en Programmeren
Modelleren en Programmeren Jeroen Bransen 13 december 2013 Terugblik Fibonacci public class Fibonacci { public static void main(string[] args) { // Print het vijfde Fibonaccigetal System.out.println(fib(5));
Nadere informatieUniversiteit 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 informatieSyntax- (compile), runtime- en logische fouten Binaire operatoren
Inhoud Syntax- (compile), runtime- en logische fouten Binaire operatoren Operaties op numerieke datatypen Evaluatie van expressies, bindingssterkte Assignment operaties en short-cut operatoren Controle
Nadere informatieHoofdstuk 5: Functies voor getallen en teksten
Programmeren in Microsoft Visual Basic 6.0, lessenserie voor het voortgezet onderwijs HAVO/VWO David Lans, Emmauscollege, Marnix Gymnasium Rotterdam, maart 2001 Hoofdstuk 5: Functies voor getallen en teksten
Nadere informatieDisclaimer 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 informatieLab 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 informatieTEST INFORMATICA 1STE BACHELOR IN DE INGENIEURSWETENSCHAPPEN - ACADEMIEJAAR
TEST INFORMATICA 1STE BACHELOR IN DE INGENIEURSWETENSCHAPPEN - ACADEMIEJAAR 2011-2012 Zaterdag 5 november 2011, 9u30 NAAM :... VRAAG 1: EVEN VEEL [5 PUNTEN] Schrijf een methode evenveel(), met twee argumenten,
Nadere informatieJe 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 informatieModelleren 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 informatieModule 3: Scratch programmeren: is het logisch of is het niet logisch?
Module 3: Scratch programmeren: is het logisch of is het niet logisch? Inhoudsopgave Module 3: Scratch programmeren: is het logisch of is het niet logisch?...1 Wat is een computerprogramma eigenlijk?...2
Nadere informatieScala. Korte introductie. Sylvia Stuurman
Korte introductie Sylvia Stuurman Wat is er zo bijzonder aan? Schaalbaar Objectgeoriënteerd (handiger dan Java!) Functioneel Scripts schrijven Gecompileerd: Java bytecode Pagina 2 voor scripts Pagina 3
Nadere informatieSQL datadefinitietaal
SQL datadefinitietaal We kunnen er het schema van de database mee bepalen: metadata toevoegen, wijzigen en verwijderen uit een database. Basiscommando's: CREATE : toevoegen van metagegevens DROP : verwijderen
Nadere informatieHoofdstuk 6: Zelf functies maken
Programmeren in Microsoft Visual Basic 6.0, lessenserie voor het voortgezet onderwijs HAVO/VWO David Lans, Emmauscollege, Marnix Gymnasium Rotterdam, januari 2004 Hoofdstuk 6: Zelf functies maken 6.0 Leerdoel
Nadere informatieGegevens invullen in HOOFDLETTERS en LEESBAAR, aub. Belgische Olympiades in de Informatica (duur : maximum 1u15 )
OI 2010 Finale 12 Mei 2010 Gegevens invullen in HOOFDLETTERS en LEESBAAR, aub VOORNAAM :....................................................... NAAM :..............................................................
Nadere informatieInhoudsopgave Voorwoord 5 Voordat je begint 6 Wat heb je nodig? 7 De website bij het boek 7 Voor ouders, verzorgers en leraren
Inhoudsopgave Voorwoord... 5 Voordat je begint... 6 Wat heb je nodig?... 7 De website bij het boek... 7 Voor ouders, verzorgers en leraren... 8 Vervolgboeken over programmeren... 8 1. Aan de slag met Python
Nadere informatieTentamen Imperatief en Object-georiënteerd programmeren in Java voor CKI
Tentamen Imperatief en Object-georiënteerd programmeren in Java voor CKI Vrijdag 22 januari 2010 Toelichting Dit is een open boek tentamen. Communicatie en het gebruik van hulpmiddelen zijn niet toegestaan.
Nadere informatieBlog-Het gebruik van variabelen in Excel VBA
Blog-Het gebruik van variabelen in Excel VBA Versie : 2012.01.31.1 (Blog http://www.reinder.eu) Dank voor de leuke reacties op het vorige blog en ook dank voor de kritische noot over het nivo dat de gebruiker
Nadere informatieOpdrachten herhalen. public void tekenscherm (object o, PEA pea) { int x; x = 1; zolang de voorwaarde geldig is
Opdrachten herhalen public void tekenscherm (object o, PEA pea) { int x; x = 1; while ( x
Nadere informatie