Tentamen Inleiding Programmeren in Java

Maat: px
Weergave met pagina beginnen:

Download "Tentamen Inleiding Programmeren in Java"

Transcriptie

1 Tentamen Inleiding Programmeren in Java Vakcode: 2lI0L7 Datum: 4 februari 2005 Tijd: uur Algemeen: Dit tentamen bestaat uit 4 opgaven, waarvoor in totaal 100 punten verdiend kunnen worden. De eerste 10 punten zijn gratis.. Blj dit tentamen mag uitsluitend een handbeschreven vel A4 als materiaal gebruikt worden. Opgave í (6 punten) Geef bij elk van de volgende uitspraken aan of ze welof niet wala. zijn: 1. Als a een boolean variabele is, dan leveren de uitdrukkingen "!a" en "a!= false" altijd dezelfde waarde op. 2. Een lokale variabele van een methode kan ook buiten die methode gebruikt worden. 3. Een public ffual attribuut kan buiten de klasse waarin het gedeclareerd is geen nieuwe waarde toegewezen krijgen, maar binnen de klasse wel. 4. Een objectmethode kan geen gebruik maken van klassenattributen. 5. Een klassenmethode kan geen gebruik maken van objectattributen. 6- Als een (formele) parameter van een methode binnen de body een nieuwe waarde toegewezen krijgt, verandert de overeenkomstige (actuele) parameter niet.

2 Opgave 2 (45 punten) Eind april wordt voor de 33" keer de Batavierenrace gehouden. De afstand van deze estafetteloop is ruim i75 kilometer en is onderverdeeld in 25 etappes. Een eenvoudig (deel)model van deze estafette is gegeven onderstaand klassendiagram. Etappe +int AANTALETAPPES = 25 +int RECORDTïJD = int -double etappenummer etappelengte J -inl- rannrriti e v v s \ irle +Etappe(int nr, double lengte) +int get,etappenr ( ) +void setrecordtijd( int nieuwetij d) Loper -String naam -Team team -Etappe etappe -int looplijd +Loper(String nm, Team tm, ELappe et) +Etappe getetappe ( ) +inl getlooptijd( ) Team -String naamteam -Loper [ ] deelnemers +Team(String nm) +boolean iscompleet ( ) +void voeglopertoe(loper loper)

3 De constructor van de klasse Etappe zorgt er voor dat de attributen etappenummer en etappelengte van een beginwaarde woraen voórzien. De recordtijd van de nieuwe instantie is aanvankelijke I 0000 (de constante REcoRDT ï JD). De methode getetappenr geeft het nummer van de etappe en de methode setrecordtijd past de recordti3d uun ut* een ljper de etappe sneller heeft afgelegd dan de huidige recordtijd. 2a (10 pnt) Geef de code van de klasse Etappe. De constructor van de klasse Loper zorgt naast initialisatie van de attributen er ook voor dat deze loper aan het betreffende team wordt toegevoegd (zie de klasse Team). De methode getetappe levert de etappe van deze loper op en de áethoáe get.loopti j d geeft de-looptijd van deze_loper' De looptijd is^initieel nul enïan worden geset met de later te maken methode setloopti j d. 2b (8 pnt) Geef de code van de klasse Loper. De klasse Loper is nog voorzien van de volgende methoden: *levert de loopsnelheid (in km/u) op van deze loper of 0 als er *nog geen tijd bekend is. public double getloopsnelheid ( ) { *de gelopen tijd van deze loper wordt gezet en eventueel wordt de *recordtijd van de gelopen etappe aangepast' *@param lt.ijd de gelopen tijd x/ public void setlooptijd(in ltijd) { i 2c (6 pnt) Schrijf de implementatie van bovenstaande methoden. Een team van lopers heeft een naírm en bestaat uit zoveel lopers als er etappes zijn. De klasse Team heeft dus een naam en een aíray van lopers als attribuut. In de constructor worden deze attributen op de juiste waarde geinitialiseerd. De methode iscompleet onderzoekt of er voor elke etappe een loper is. De methode voeglopertoe zet, indien het team nog niet compleet is, de loper op de juiste plaats in de array deelnemers. 2d (3pnt) 2e (8 pnt) 2f (10 pnt) Geef de implementatie van de contructor Team. Geef de specificatie en implementatie van de methode iscompleet. Geef de specificatie en implementatie van de methode voegloperlfoe.

4 - Opgave 3 (12 Punten) Beschouw nu het volgende prograínmafragment: L Team Leaml= new Team('Teama') ; 2 Etappe etl- = new EtaPPe (1",3-2) ; 3 Etappe el2 = new EtaPPe (2,7.0) i 4 EtapPe et3 = new EtaPPe (3, ) ; r 6 Loper henny = new Loper('Henny'' teaml-' et1) ; 7 Loper karel = new Loper('Karel',teaml-,et3); a 9 teaml.voeglopertoe(henny) ; l-0 teaml-. voeglopertoe (karel ) ; 1-1 t2 henny. setloopttijd(708) ; l-3 karel. setï,ooptijd(2503) ; 3a (4 pnt) Teken het geheugenmodel (objectdiagram) na regel 4' 3b (3 pnt) 3c (1 pnt) Geef de aanpassing/uitbreiding na de regels 6"10' Geef de aanpassingluitbreiding na de regels 12 en 13. :d (4 pnq Wat is na afloop van bovenstaand prografirmafragment de waarde/resultaat van de onderstaande uitdrukkingen. Indien eeï uitdrukking niet correct kan worden uitgevoerd geef dan aan wat de fout is. 20 henny.getnaam0 == 'HennY'; )1 hennrr. team == teaml-; 22 et2 == karel.getetappe0; 23 karel.serlooptijd(et2.setrecordtijd(2500) ) ; 24 et3. etappelengte = 3.3;

5 Apgave 4 (27 punten) Gegeven zijn onderstaande twee klassen, Bestand Gegevens.java 1 2 publíc claes Gegevens 1 { i / /Lengte array public Gegevenso { this"info = nêw GegevenlGegevens.aRL];] public void initgegevens ( ) tl 12 public void grapjeo 13 {for (ffi; tel< Gegevens.ARL;te1=te1+2) this. info Ite]-l. initnaam( ) ; ] t4 15 public int 16 //nog meer n 18 public inè 19 //nog meer 2 0 ) Bestand Gegeven.iava 2l 22 public clasg Gegeven ffi-w(strins woord) { /"ffiffi*m "/ methoden die operatie op de data mogelijk maken ffioiz*ffi*ui methoden die operatie op de data mogelijk maken JJ l public Gegeveno {; public void initnaamo {this.naam=ílew String( public String getnaamo {return this.naam; " " ) ; public void setnaam (String naam) {this.naam=naam ; public int getvolgnummer ( ) { return ttris.volgnummer ; public void setvolgnummer tint ffi) i this. volgnummer=nummer ) ; ) De grijze markering is ten behoeve van opgave 4c en heeít verder geen betekenis. Beschouw nu het volgende programmafragment: private Gegevens inf; inf=new Gegevens O ; inf. inilgegevens O ; ;-c ^-^*l^ / \. Irr!,u!q/Js\r,,// situatie A,// situatie e //situatie C //siluatie D

6 4a (5 pnt) GeeÍ de bij de situatie A, B, C en D behorende geheugenmodel (objectdiagram). Duidelijk moet zijn of een variabele een waarde heeft, een NULL reíerentie (x) heeít of ongedeíinieerd is (?). fn klasse Gegeven wordt in de methoden seërvaam en setvofgnuírnner het sleutelwoord this gebruikt. 4b (2 pnt) Vertel wat dit betekent en leg uit wat het eífect van deze methoden zou ziin als de beide this's daar niet zouden staan. Gegeven de volgende veel gebruikte begrippen. Y. h.l_. l. Klasse attribuut Object altribuut Lokale variabele Formel-e (paramet,er) Actuele (parameter) Terugkeerwaarde Variabele declaralie Object creatie PrÍmitief (type) Ref erenlie (tlpe) k. 'l m. o, q. r, t. Methode heading Methode body Klasse Instantie van een klasse Obj ect. ConsLructor "maakt gebruik van" " j-s een uitbreiding (overerving) ToekenningsopdrachL ( associatie ) van" 4c (10 pnt) Vul op de plaatsen mel <<begrip?>> een begrip uit de bovenstaande lijst in (totaal 12 begrippen). fn de klasse Gegevenwordt in regel23 een << begrip />> van het << begrip 2>> (type) gedeclareerd. ln regel24 wordt een declaratie gecombineerd met << begrip 3>> aan de waarde 0' De kfasse Gegevens heeít een << begrip 4>> relatie met de klasse Gegeveni dit is te zien in regel 5. Hier wordthel << begrip 5>> inf o van het << begrip ó>> (type) gedeclareerd. fn regef 10 vindt de << begrip 7>> van de elementen van het array plaats. De << begrip 8>> Ëet is van het << begrip 9>> (type) en wordt ook wel de lopende'oí indexvariabele genoemd. ln regel 4 wordt het << begrip I0>> ARL gedeclareerd. Omdat ARL binnen zijn eigen klasse gebruikt wordt zou in regel I ook Ian-c I of [this.arl] mogen staan. Neem de methode die begint in regel 40 in beschouwing, nunrmer in regel 40 is een << begrip 11>> en is een onderdeel van << begrip I2>> 6

7 Bij de opgaven d, e en f mag de herhalingsopdracht niet worden afgebroken met een return of break. Bij opgave e en Í mag je aannemen dat de methode initcevens uitgevoerd is 4d(4pnt) Transformeer het Íor-statement uit rnjtgegevens (regel 9) naar een while'statement. Ondersteun je ontwerp met een schets van het array, geef in deze schets duidelijk de rol van tel (ook wel lopende variabele genoemd) aan, beschrijí de betekenis van deze variabele en motiveer de startwaarden stopconditie. De methode tefngllstrings levert het aantal keren dat naam in het array de waarde NULL heeft' 4e (3 pnt) lmplementeer de methode public int telnur,r,strings O (regel 18). Je heb de keuze om deze opgave op te lossen met een for-statement of een while-statement. Motiveer jouw keuze (geen gebruik van relurn of break!). De methodê zoekwoord levert het volgnummer op van de laatste keer dat woord in het array Lhis.:.nfo VooÍkomt, dit gerekend vanaf index 0. 4f (3pnt) lmplementeer de methode public int zoekwoord (SLring woord).(regel 15) Je heb de keuze om deze opgave op te lossen met een for-statement of een whilestatement. Motiveer jouw keuze (geen gebruik van return of break!). Met welke terugkeerwaarde(n) kan er aangeven worden dal woord niet voorkomt?

8 Opgave 1 1. Niet waar. Als a waar is, levert!a nietwaar op, maar a!= false levert waar op. 2. Niet waar. Een lokale variabele van een methode is alleen beschikbaar binnen de methode. 3. Waar. Er kan 1 keer een waarde toegekend worden aan een final attribuut, dat kan bij het declareren van het attribuut of in de constructor van de klasse (1 keer!). Dus alleen binnen de klasse, en slechts 1 keer. 4. Nietwaar. Iedereen kan gebruik maken van klassenattributen (als ze public zijn), dus ook de objectmethoden van die klasse. 5. Waar Een klassemethode kan geen gebruik maken van de objectattributen van een object van die klasse, omdat de methode aangeroepen kan worden voordat er een object aangemaakt is. Wel kan de methode een object aanmaken of meekrijgen als parameter en de objectattributen van dat object benaderen (als ze public zijn). 6. Waar De formele parameter is een kopie van de actuele parameter. In het geval van een primitieve dus een kopie van de waarde, in het geval van een object een kopie van de verwijzing. Wanneer dus de waarde van de formele parameter zelf veranderd wordt, wordt de waarde van de kopie veranderd: de waarde van de primitieve wordt veranderd of de verwijzing naar het object. Wordt echter iets veranderd aan het object waar de formele parameter naar verwijst, is dit een verandering aan het object waar ook de actuele parameter heen wijst. Opgave 2 a. * De klasse etappe beschrijft een etappe van de Batavierenrace * Het etappenummer, de etappelengte en de recordtijd wordt bijgehouden Albert Molderink 1.0 public class Etappe{ public static final int AANTALETAPPES = 25; public static final int RECORDTIJD = 10000; private int etappenummer; private double etappelengte; private int recordtijd; * Constructor voor de klasse Etappe * Het etappenummer en de lengte worden gezet op de waarden van de parameters, * als de waarde van de parameters geldig zijn. De recordtijd wordt op een * waarde van geinitieerd (RECORDTIJD) nr het nummer van de etappe, moet liggen tussen 1 en AANTALETAPPES lengte de lengte van de etappe, moet groter dan 0 zijn public Etappe(int nr, double lengte){ if(nr<=etappe.aantaletappes){ //klopt het etappenummer wel? this.etappenummer=nr;

9 else{ etappenummer=-1; if(lengte>0){ this.etappelengte=lengte; else{ this.etappelengte=0; this.recordtijd = Etappe.RECORDTIJD; * Geeft het nummer van de etappe het nummer van de etappe public int getetappenr(){ return etappenummer; * Zet de recordtijd op de waarde van de parameter, als dit tenminste echt een * nieuwe recordtijd is, anders blijft de oude waarde staan nieuwetijd de nieuwe recordtijd, moet groter dan 0 zijn public void setrecordtijd(int nieuwetijd){ if(nieuwetijd<this.recordtijd){ this.recordtijd=nieuwetijd; b. * Klasse die een loper van de batavierenrace beschrijft Albert Molderink 1.0 public class Loper{ private String naam; private Team team; private Etappe etappe; private int looptijd; * Constructor voor de klasse Loper. De naam, het team en de etappe worden * gezet op de waarden van de parameters, de looptijd wordt op 0 gezet. Verder * wordt de loper toegevoegd aan het team. nm de naam van de speler tm het team waarin de loper loopt et de etappe die de loper loopt public Loper(String nm, Team tm, Etappe et){ this.naam=nm; this.team=tm; this.etappe=et; this.looptijd=0; team.voeglopertoe(this); //this geeft het huidige object

10 * Geeft de etappe die de loper loopt de etappe waarin de loper loopt public Etappe getetappe(){ return this.etappe; * Geeft de tijd die de loper nodig had voor de etappe de tijd die de loper nodig had de etappe te lopen public int getlooptijd(){ return this.looptijd; c. * Geeft de gemiddelde snelheid die de loper gelopen heeft tijdens de etappe de gemiddelde snelheid tijdens de etappe public double getloopsnelheid(){ if(this.looptijd==0){ return 0; else{ double afstand = et.getetappelengte(); //we gaan er vanuit dat deze //methode bestaat return this.looptijd/afstand; * Zet de tijd die de loper nodig had voor de etappe, zo nodig wordt ook de * recordtijd van de etappe aangepast ltijd de tijd die de loper nodig had voor de etappe, moet groter dan 0 * zijn public void setlooptijd(int ltijd){ this.looptijd=ltijd; et.setrecordtijd(ltijd); //deze methode controleert of het wel echt een //recordtijd is d. * Constructor voor de klasse Team, het aantal lopers wordt geinitieerd op 0 nm de naam van het team public Team(String nm){ this.naam=nm; this.lopers = new Loper[Etappe.AANTALETAPPES]; this.aantallopers=0;

11 e. * Methode die controleert of er even veel lopers zijn bij een team als er etappes * zijn een boolean of er evenveel lopers als etappes zijn public boolean iscompleet(){ return (this.aantallopers==etappe.aantaletappes); f. * Voeg een loper toe aan het team lp de loper die toegevoegd moet worden aan het team public void voeglopertoe(loper lp){ if(this.aantallopers<etappe.aantaletappes){ this.lopers[aantallopers]=lp; this.aantallopers++; Opgave 3 (klassenattributen en methoden mogen onderstreept aangegeven worden in het object diagram, een array is aangegeven als een object met schuingedrukt de lengte) a team1: Team naamteam : deelnemers : aantallopers : 0 naamteam: String Teama deelnemers : Array lengte 25 et1 : Etappe et2 : Etappe et3 : Etappe AANTALETAPPES : 25 RECORDTIJD : etappenummer : 1 etappelengte : 3.2 recordtijd : AANTALETAPPES : 25 RECORDTIJD : etappenummer : 2 tappelengte : 7.0 recordtijd : AANTALETAPPES : 25 RECORDTIJD : etappenummer : 3 etappelengte : 11.9 recordtijd : 10000

12 b Er worden twee lopers aangemaakt en toegevoegd aan de array. Alleen de array en de lopers zijn getekend. We gaan er even vanuit dat de lopers maar een keer toegevoegd worden (niet en in de constructor zoals in de vorige opdracht en regel 9-10). Wil je dit wel meenemen, komen er twee pijlen vanuit de array naar ieder object. team1: Team naamteam : deelnemers : aantallopers : 2 naamteam: String Teama deelnemers : Array lengte 25 naam: String Henny henny : Loper naam : team : etappe : looptijd : 0 karel : Loper naam : team : etappe : looptijd : 0 naam : String Karel et1 : Etappe et2 : Etappe et3 : Etappe AANTALETAPPES : 25 AANTALETAPPES : 25 AANTALETAPPES : 25 RECORDTIJD : RECORDTIJD : RECORDTIJD : etappenummer : 1 etappenummer : 2 etappenummer : 3 etappelengte : 3.2 tappelengte : 7.0 etappelengte : 11.9 recordtijd : recordtijd : recordtijd : c De looptijd van de lopers wordt aangepast en daarom ook de recordtijd van de etappes als dat nodig is. team1: Team naamteam : deelnemers : aantallopers : 2 naamteam: String Teama deelnemers : Array lengte 25 naam: String Henny henny : Loper naam : team : etappe : looptijd : 708 karel : Loper naam : team : etappe : looptijd : 2503 naam : String Karel et1 : Etappe et2 : Etappe et3 : Etappe AANTALETAPPES : 25 AANTALETAPPES : 25 AANTALETAPPES : 25 RECORDTIJD : RECORDTIJD : RECORDTIJD : etappenummer : 1 etappenummer : 2 etappenummer : 3 etappelengte : 3.2 tappelengte : 7.0 etappelengte : 11.9 recordtijd : 708 recordtijd : recordtijd : 2503

13 d 20. NIETWAAR: twee objecten kunnen op deze manier niet vergeleken worden, op deze manier worden twee verwijzingen vergeleken. 21. FOUTMELDING: het attribuut team is private, dus kan niet van buiten het object benadert worden 22. NIETWAAR: ten eerste worden hier ook weer twee verwijzingen vergeleken, maar karel loopt echter etappe 3. De vergelijking et3==karel.getetappe() vergelijkt ook twee verwijzingen, maar dat zijn twee verwijzingen naar hetzelfde object, dus dat zou WAAR opleveren 23. FOUTMELDING: de methode setlooptijd wordt aangeroepen op het object karel, dat is prima. De methode setrecordtijd aanroepen op et2 gaat ook prima, ook een methode aanroep als parameter mee geven gaat goed. De returnwaarde van de binnenste methode wordt dan meegegeven als parameter aan de buitenste methode. Maar de methode setlooptijd heeft een int als parameter, de methode setrecordtijd heeft als returntype void. 24. FOUTMELDING: etappelengte is een private attribuut Opgave 4 a situatie A: er wordt alleen ruimte voor de verwijzing naar het object gemaakt. situatie B: er wordt ook geheugen gereserveerd voor het object: inf : Gegevens ARL : 6 info : info : Array lengte 6 situatie C: er zijn 6 objecten van de klasse Gegeven aangemaakt en toegevoegd aan de array (er zijn er 2 getekend). Volgnummer staat op 0 omdat dit de beginwaarde is, de string naam verwijst nog niet naar een object, alleen de verwijzing is nog maar aangemaakt, nog geen object. inf : Gegevens ARL : 6 info : info : Array lengte 6 gegeven1 : Gegeven naam : x volgnummer : 0 gegeven2 : Gegeven naam : x volgnummer : 0 situatie D: de object in de array info op de plaasten 0, 2 en 4 worden aangepast (tel=tel+2). Bij deze object wordt de String naam geinitieerd op (er zijn weer twee object getekend). inf : Gegevens ARL : 6 info : info : Array lengte 6 naam : String gegeven1 : Gegeven naam : volgnummer : 0 gegeven2 : Gegeven naam : x volgnummer : 0

14 b Bij setnaam geeft this.naam aan dat de waarde van het objectattribuut verandert moet worden. Omdat er in de methode een variabele naam gedeclareerd wordt, zou zonder this die variabele bedoelt worden. Het zou dus fout gaan zonder this. Bij setvolgnummer geeft this opnieuw aan dat het objectattribuut bedoelt wordt, maar er wordt in de methode geen variabele volgnummer gedeclareerd, dus ook zonder this is het duidelijk dat het attribuut bedoelt wordt. Deze methode zou hetzelfde werken zonder this. c In de klasse Gegeven wordt in regel 23 een Object attribuut van het Referentie (type) gedeclareerd. In regel 24 wordt een declaratie gecombineerd met Toekenningsopdracht aan de waarde 0. De klasse Gegevens heet een maakt gebruik van (associatie) relatie met de klasse Gegeven; dit is te zien in regel 5. Hier wordt het Object attribuut van het Array (type) gedeclareerd. In regel 10 vind de Object creatie van de elementen van het array plaats. De lokale variabele tel is van het primitief (type) en wordt ook wel de lopende- of indexvariabele genoemd. In regel 4 wordt het Klasse attribuut ARL gedeclareerd. Omdat ARL binnen zijn eigen klasse gebruikt wordt zou in regel 8 ook [ARL] of [this.arl] mogen staan. Neem de methode die begint in regel 40 in beschouwing, nummer in regel 40 is een Formele parameter en is een onderdeel van methode heading. d De tel doorloopt iedere index van de array, hij loopt door de array, vandaar lopende variabele. De startwaarde is 0: de waarde van de eerste index. De stopwaarde is het einde van de array, de laatste index is de lengte van de array -1. Dus als tel de lengte van de array bereikt, moet hij stoppen. tel info... int tel=0; while(tel<gegevens.arl){ this.info[tel]=new Gegeven(); tel++; e Ik heb gekozen voor een for-lus omdat ik precies weet hoe vaak het uitgevoerd moet worden, de hele array moet doorgelopen worden. * Telt het aantal keren dat er een object van het type Gegeven in de array zit * waarvan de naam nog niet geinitialiseerd is (NULL) het aantal keren dat er een NULL string voorkomt public int telnullstrings(){ int teller=0; for(int tel=0;tel<gegevens.arl;tel++){ if(this.info[tel].getnaam()==null){ teller++;

15 return teller; f Ik heb een for-lus gebruikt omdat ik precies weet hoe vaak het uitgevoerd moet worden, namelijk net zo vaak als de array lang is. Als terugkeerwaarde als hij niet gevonden is heb ik -1 gekozen, dat is een ongeldige index van een array en geeft zo aan dat hij er niet in voorkomt. * Deze methode zoek het laatste voorkomen van woord in de verzameling van gegevens woord het woord dat je zoek de laatste index waar het woord voorkomt, anders -1 public int zoekwoord(string woord){ int teller=-1; String temp; for(int tel=0;tel<gegevens.arl;tel++){ temp=this.info[tel].getnaam(); if(temp.equals(woord)){ teller=tel; return teller; Een tweede voorbeeld: met een while lus. Deze implementatie is optimaler dan de vorige: hij begint aan de achterkant van de array te zoeken totdat hij woord tegenkomt. Als woord voorkomt, is deze eerder klaar dan de methode die aan de voorkant begint. De terugkeerwaarde is opnieuw -1 als hij niet gevonden wordt. MERK OP: zie je dat de javadoc voor beide implementatie's gelijk is? Dus dat een gebruiker van de klasse geen verschil tussen de implementatie's ziet, omdat hij alleen de javadoc bekijkt. En dat het voor de gebruiker ook niet uitmaakt, als er maar het goede resultaat uitkomt. * Deze methode zoek het laatste voorkomen van woord in de verzameling van gegevens woord het woord dat je zoek de laatste index waar het woord voorkomt, anders -1 public int zoekwoord(string woord){ bool gevonden = false; int teller = Gegevens.ARL; while( teller > 0 &&!gevonden){ teller--; //eerst verlagen! gevonden=this.info[teller].getnaam().equals(woord); //snap je dit? if(gevonden){ return teller; else{ return -1;

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

Voorbeeldtentamen Inleiding programmeren (IN1608WI), Oktober 2003, , Technische Universiteit Delft, Faculteit EWI, Afdeling 2. Voorbeeldtentamen Inleiding programmeren (IN1608WI), Oktober 2003, 14.00-15.30, Technische Universiteit Delft, Faculteit EWI, Afdeling 2. Dit tentamen bestaat uit twee delen. Deel 1 (14.00-14.45, gesloten

Nadere informatie

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

Objectgeoriënteerd programmeren in Java 1

Objectgeoriënteerd programmeren in Java 1 Objectgeoriënteerd programmeren in Java 1 CPP Javaprogrammeur Bijeenkomst 3 Leereenheden 7, 8, 9 De Java API Java bevat een grote bibliotheek standaardklassen: de Java API Voorbeelden java.lang basisklassen

Nadere informatie

Tentamen Object Georiënteerd Programmeren TI1200 30 januari 2013, 9.00-12.00 Afdeling SCT, Faculteit EWI, TU Delft

Tentamen Object Georiënteerd Programmeren TI1200 30 januari 2013, 9.00-12.00 Afdeling SCT, Faculteit EWI, TU Delft Tentamen Object Georiënteerd Programmeren TI1200 30 januari 2013, 9.00-12.00 Afdeling SCT, Faculteit EWI, TU Delft Bij dit tentamen mag je geen gebruik maken van hulpmiddelen zoals boek of slides. Dit

Nadere informatie

Universiteit van Amsterdam FNWI. Voorbeeld van tussentoets Inleiding programmeren

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

Nadere informatie

Datatypes Een datatype is de sort van van een waarde van een variabele, veel gebruikte datatypes zijn: String, int, Bool, char en double.

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

Omschrijf bij ieder onderdeel van de methode de betekenis ervan. Java kent twee groepen van klassen die een GUI kunnen maken: awt en swing.

Omschrijf bij ieder onderdeel van de methode de betekenis ervan. Java kent twee groepen van klassen die een GUI kunnen maken: awt en swing. irkel (met Jpanel) ij de onderstaande opdracht behoort het bestand Panels: JPanels_1.java (map Panel) in de map irkel. pplicaties in Java hebben altijd een publieke klasse waarin een methode main voorkomt.

Nadere informatie

TENTAMEN Programmeren 1 VOORBEELDUITWERKING

TENTAMEN Programmeren 1 VOORBEELDUITWERKING TENTAMEN Programmeren 1 vakcode: 213500 datum: 10 juli 2004 tijd: 9:00-12:30 uur VOORBEELDUITWERKING Algemeen Bij dit tentamen mag gebruik worden gemaakt van het boek van Niño/Hosch, en van de handleiding

Nadere informatie

Tentamen Objectgeorienteerd Programmeren TI februari Afdeling ST Faculteit EWI TU Delft

Tentamen Objectgeorienteerd Programmeren TI februari Afdeling ST Faculteit EWI TU Delft I ' Tentamen Objectgeorienteerd Programmeren TI 1200 1 februari 2012 9.00-12.00 Afdeling ST Faculteit EWI TU Delft Bij dit tentamen mag je geen gebruik maken van hulpmiddelen zoals boek of slides. Dit

Nadere informatie

Programmeren (1) Examen NAAM:

Programmeren (1) Examen NAAM: Schrijf al je antwoorden op deze vragenbladen (op de plaats die daarvoor is voorzien) en geef zowel klad als net af. Bij heel wat vragen moet je zelf Java-code schrijven. Hou dit kort en bondig. Je hoeft

Nadere informatie

Modelleren en Programmeren

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

Nadere informatie

TENTAMEN Programmeren 1

TENTAMEN Programmeren 1 TENTAMEN Programmeren 1 vakcode: 213500 datum: 15 augustus 2002 tijd: 13:30 17:00 uur Algemeen Bij dit tentamen mag gebruik worden gemaakt van het boek van Niño/Hosch, en van de handleiding van Programmeren

Nadere informatie

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

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

Nadere informatie

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

Deeltentamen Grammatica s en ontleden 22 december 2005

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

Nadere informatie

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

Uitwerking Aanvullend tentamen Imperatief programmeren Woensdag 24 december 2014, 13.30 15.30 uur

Uitwerking Aanvullend tentamen Imperatief programmeren Woensdag 24 december 2014, 13.30 15.30 uur Uitwerking Aanvullend tentamen Imperatief programmeren Woensdag 24 december 2014, 13.30 15.30 uur 1. deze opgave telt voor 30% van het totaal. Schrijf een compleet programma, dat door de gebruiker vanaf

Nadere informatie

Inhoud. Eindtoets. Introductie 2. Opgaven 3. Bijlage bij opgaven 9. Terugkoppeling 12

Inhoud. Eindtoets. Introductie 2. Opgaven 3. Bijlage bij opgaven 9. Terugkoppeling 12 Open Universiteit Inhoud Introductie 2 Opgaven 3 Bijlage bij opgaven 9 Terugkoppeling 12 1 Open Universiteit Objectgeoriënteerd programmeren in Java 1 I N T R O D U C T I E Deze eindtoets is bedoeld als

Nadere informatie

IMP Uitwerking week 13

IMP Uitwerking week 13 IMP Uitwerking week 13 Opgave 1 Nee. Anders moet bijvoorbeeld een venster applicatie een subklasse zijn van zowel Frame en WindowListener. Als de applicatie ook een button of een menu heeft, dan moet het

Nadere informatie

Tentamen Inleiding Programmeren (IN1608WI), duur van de toets 2 uur Technische Universiteit Delft, Faculteit EWI, Afdeling 2.

Tentamen Inleiding Programmeren (IN1608WI), duur van de toets 2 uur Technische Universiteit Delft, Faculteit EWI, Afdeling 2. Tentamen Inleiding Programmeren (IN1608WI), duur van de toets 2 uur Technische Universiteit Delft, Faculteit EWI, Afdeling 2. Gesloten boek examen: er mag geen gebruik worden gemaakt van het studieboek.

Nadere informatie

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

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

Nadere informatie

Zelftest Programmeren in Java

Zelftest Programmeren in Java Zelftest Programmeren in Java Document: n0883test.fm 22/01/2013 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INLEIDING BIJ DE ZELFTEST PROGRAMMEREN IN JAVA Deze test

Nadere informatie

Tentamen Objectgeorienteerd Programmeren IN1205 Voorbeeld

Tentamen Objectgeorienteerd Programmeren IN1205 Voorbeeld Tentamen Objectgeorienteerd Programmeren IN1205 Voorbeeld Afdeling ST Faculteit EWI TU Delft Bij dit tentamen mag u gebruik maken van: Barnes, Object-Oriented Programming with Java en de Notitie Algoritmiek

Nadere informatie

Tentamen Imperatief en Object-georiënteerd programmeren in Java voor CKI

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

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

VI. Klassen en objecten

VI. Klassen en objecten VI. Klassen en objecten Klassen en objecten vormen het fundament van OOP. We zullen dus uitgebreid aandacht besteden aan klassen en objecten. U kunt Java niet begrijpen zonder goed met klassen en objecten

Nadere informatie

TENTAMEN Programmeren 1 VOORBEELDUITWERKING

TENTAMEN Programmeren 1 VOORBEELDUITWERKING TENTAMEN Programmeren 1 vakcode: 213500 datum: 28 november 2002 tijd: 13:30 17:00 uur VOORBEELDUITWERKING Algemeen Bij dit tentamen mag gebruik worden gemaakt van het boek van Niño/Hosch, en van de handleiding

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

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

public boolean equaldates() post: returns true iff there if the list contains at least two BirthDay objects with the same daynumber Tentamen TI1310 Datastructuren en Algoritmen, 15 april 2011, 9.00-12.00 TU Delft, Faculteit EWI, Basiseenheid Software Engineering Bij het tentamen mag alleen de boeken van Goodrich en Tamassia worden

Nadere informatie

Tweede deeltentamen Gameprogrammeren Vrijdag 17 oktober 2014, uur

Tweede deeltentamen Gameprogrammeren Vrijdag 17 oktober 2014, uur Naam: Tweede deeltentamen Gameprogrammeren Vrijdag 17 oktober 2014, 8.30-10.30 uur Studentnummer: Het tentamen bestaat uit 3 opgaven. Opgaven 1 levert 10 punten op, opgave 2 levert 10 punten op, en opgave

Nadere informatie

Overerving & Polymorfisme

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

Nadere informatie

Veel succes! 1. Deze opgave bestaat uit een aantal deelvragen. Houd het antwoord kort: één of twee zinnen per onderdeel kan al genoeg zijn.

Veel succes! 1. Deze opgave bestaat uit een aantal deelvragen. Houd het antwoord kort: één of twee zinnen per onderdeel kan al genoeg zijn. Tweede deeltentamen Gameprogrammeren Vrijdag 18 oktober 2013, 11.00-13.00 uur Naam: Studentnummer: Het tentamen bestaat uit 3 opgaven. Opgaven 1 levert 10 punten op, opgave 2 levert 6 punten op, en opgave

Nadere informatie

Veel succes! 1. Gegeven is de volgende klasse:

Veel succes! 1. Gegeven is de volgende klasse: Dit tentamen is in elektronische vorm beschikbaar gemaakt door de TBC van A Eskwadraat. A Eskwadraat kan niet aansprakelijk worden gesteld voor de gevolgen van eventuele fouten in dit tentamen. Derde deeltentamen

Nadere informatie

Tentamen Object Georiënteerd Programmeren TI1206 29 oktober 2014, 9.00-11.00 Afdeling SCT, Faculteit EWI, TU Delft

Tentamen Object Georiënteerd Programmeren TI1206 29 oktober 2014, 9.00-11.00 Afdeling SCT, Faculteit EWI, TU Delft Tentamen Object Georiënteerd Programmeren TI1206 29 oktober 2014, 9.00-11.00 Afdeling SCT, Faculteit EWI, TU Delft Bij dit tentamen mag je geen gebruik maken van hulpmiddelen zoals boek of slides. Digitale

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

public Paneel() { knop = new JButton( Klik ); knop.addactionlistener( new KnopHandler() ); tekstvak = new JTextField(10); add(knop); add(tekstvak);

public Paneel() { knop = new JButton( Klik ); knop.addactionlistener( new KnopHandler() ); tekstvak = new JTextField(10); add(knop); add(tekstvak); Vaknaam: Programmeren I (Java) - Tentamen Module: 2 Datum/Tijd: 17 mrt 2015 / 18.30 20:30 Richting: ICT Code: IC011 Docent: E. Lieuw Boeken en aantekeningen NIET toegestaan. Kladpapier is wel toegestaan.

Nadere informatie

Informatica. Objectgeörienteerd leren programmeren. Van de theorie met BlueJ tot een spelletje met Greenfoot... Bert Van den Abbeele

Informatica. Objectgeörienteerd leren programmeren. Van de theorie met BlueJ tot een spelletje met Greenfoot... Bert Van den Abbeele Informatica Objectgeörienteerd leren programmeren Van de theorie met BlueJ tot een spelletje met Greenfoot... Bert Van den Abbeele http://creativecommons.org/licenses/by-nc-nd/3.0/legalcode Objectgeörienteerd

Nadere informatie

Modelleren en Programmeren

Modelleren en Programmeren Modelleren en Programmeren Jeroen Bransen 13 december 2013 Terugblik Fibonacci public class Fibonacci { public static void main(string[] args) { // Print het vijfde Fibonaccigetal System.out.println(fib(5));

Nadere informatie

Java spiekbrief. Commentaar. Definitie van een methode. Types. Variabelendeclaratie. Definitie van een klasse. Namen. Definitie van een veld

Java spiekbrief. Commentaar. Definitie van een methode. Types. Variabelendeclaratie. Definitie van een klasse. Namen. Definitie van een veld Java spiekbrief Commentaar Dient enkel voor de menselijke lezer. // tot het einde van de lijn /* Dit type commentaar kan gerust meerdere lijnen beslaan. */ /** En deze speciale vorm wordt gebruikt voor

Nadere informatie

Stacks and queues. Introductie 45. Leerkern 45. Terugkoppeling 49. Uitwerking van de opgaven 49

Stacks and queues. Introductie 45. Leerkern 45. Terugkoppeling 49. Uitwerking van de opgaven 49 Stacks and queues Introductie 45 Leerkern 45 6.1 Stacks 45 6.2 Queues 47 6.3 Double-ended queues 48 Terugkoppeling 49 Uitwerking van de opgaven 49 Bijlage: Diagrammen belangrijkste interfaces en klassen

Nadere informatie

Uitwerkingen Tweede deeltentamen Imperatief programmeren Vrijdag 15 oktober 2010, 11.00-13.00 uur

Uitwerkingen Tweede deeltentamen Imperatief programmeren Vrijdag 15 oktober 2010, 11.00-13.00 uur Uitwerkingen Tweede deeltentamen Imperatief programmeren Vrijdag 15 oktober 2010, 11.00-13.00 uur 1. (2 punten per deelvraag) Deze opgave bestaat uit een aantal tekstvragen. Houd het antwoord kort: een

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

Java spiekbrief. Commentaar. Definitie van een methode. Types. Variabelendeclaratie. Definitie van een klasse. Namen. Definitie van een veld

Java spiekbrief. Commentaar. Definitie van een methode. Types. Variabelendeclaratie. Definitie van een klasse. Namen. Definitie van een veld Java spiekbrief Commentaar Dient enkel voor de menselijke lezer. // tot het einde van de lijn /* Dit type commentaar kan gerust meerdere lijnen beslaan. */ /** En deze speciale vorm wordt gebruikt voor

Nadere informatie

Kleine cursus PHP5. Auteur: Raymond Moesker

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

Nadere informatie

Voorbeeld: Simulatie van bewegende deeltjes

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

HOGESCHOOL VAN AMSTERDAM Informatica Opleiding. CPP 1 van 10

HOGESCHOOL VAN AMSTERDAM Informatica Opleiding. CPP 1 van 10 CPP 1 van 10 ADSdt 1-2009 TENTAMENVOORBLAD Voor aanvang van het tentamen s.v.p. de tentamengegevens goed doorlezen om eventuele misverstanden te voorkomen!! Naam student : Studentnummer : Groep : Studieonderdeel

Nadere informatie

Tentamen Imperatief Programmeren

Tentamen Imperatief Programmeren Tentamen Imperatief Programmeren Maandag 22 oktober 2001 Toelichting Dit is een open boek tentamen, d.w.z. het cursusboek mag gebruikt worden. N.B.: Het tentamen is individueel: voor het maken van de opgaven

Nadere informatie

voegtoe: eerst methode bevat gebruiken, alleen toevoegen als bevat() false is

voegtoe: eerst methode bevat gebruiken, alleen toevoegen als bevat() false is PROEF-Tentamen Inleiding programmeren (IN1608WI), X januari 2010, 9.00-11.00, Technische Universiteit Delft, Faculteit EWI, Afdeling 2. Open boek tentamen: bij het tentamen mag alleen gebruik worden gemaakt

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

Voortgezet Prog. voor KI

Voortgezet Prog. voor KI Voortgezet Prog. voor KI Docent: Michael Wilkinson IWI 142 tel. 050-3638140 (secr. 3633939) Frank Brokken RC 352 tel. 050-3633688 Voorkennis: Inleiding Programmeren voor KI (nieuwe stijl) Stof: Practicum

Nadere informatie

Tweede deeltentamen Mobiel programmeren - versie 1 Vrijdag 2 februari 2018, uur

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

Aanvullende toets Gameprogrammeren Woensdag 5 januari 2011, uur

Aanvullende toets Gameprogrammeren Woensdag 5 januari 2011, uur Dit tentamen is in elektronische vorm beschikbaar gemaakt door de TBC van A Eskwadraat. A Eskwadraat kan niet aansprakelijk worden gesteld voor de gevolgen van eventuele fouten in dit tentamen. Aanvullende

Nadere informatie

Uitwerkingen derde deeltentamen Gameprogrammeren Vrijdag 6 november 2015, uur

Uitwerkingen derde deeltentamen Gameprogrammeren Vrijdag 6 november 2015, uur Uitwerkingen derde deeltentamen Gameprogrammeren Vrijdag 6 november 2015, 11.00-13.00 uur 1. Deze opgave bestaat uit een aantal deelvragen. Houd het antwoord kort: één of twee zinnen per onderdeel kan

Nadere informatie

In BlueJ. Doe onderstaande met muis/menu s:

In BlueJ. Doe onderstaande met muis/menu s: In BlueJ Doe onderstaande met muis/menu s: Download en unzip het bestand sklok-run.zip en open het in BlueJ Maak een Schaakklok-object Voer herstart() uit voor dit object Vraag de resterende tijd op voor

Nadere informatie

Derde deeltentamen Imperatief programmeren - versie 1 Vrijdag 6 november 2015, uur

Derde deeltentamen Imperatief programmeren - versie 1 Vrijdag 6 november 2015, uur Derde deeltentamen Imperatief programmeren - versie 1 Vrijdag 6 november 2015, 11.00-13.00 uur Schrijf op elk ingeleverd blad je naam. Schrijf op het eerste blad ook je studentnummer en het aantal ingeleverde

Nadere informatie

NAAM: Programmeren 1 Examen 29/08/2012

NAAM: Programmeren 1 Examen 29/08/2012 Programmeren 29 augustus 202 Prof. T. Schrijvers Instructies Schrijf al je antwoorden op deze vragenbladen (op de plaats die daarvoor is voorzien). Geef ook je kladbladen af. Bij heel wat vragen moet je

Nadere informatie

NAAM: Programmeren 1 Examen 21/01/2011

NAAM: Programmeren 1 Examen 21/01/2011 Programmeren 1 21 januari 2011 Prof. T. Schrijvers Instructies Schrijf al je antwoorden op deze vragenbladen (op de plaats die daarvoor is voorzien). Geef ook je kladbladen af. Bij heel wat vragen moet

Nadere informatie

b.text = "Rol!"; b.location = new Point(100, 0); b.click += this.rol; this.paint += this.teken;

b.text = Rol!; b.location = new Point(100, 0); b.click += this.rol; this.paint += this.teken; Tweede deeltentamen Imperatief programmeren Vrijdag 18 oktober 2013, 11.00-13.00 uur Schrijf op elk ingeleverd blad je naam. Schrijf op het eerste blad ook je studentnummer en het aantal ingeleverde bladen.

Nadere informatie

Tentamen in2705 Software Engineering

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

Nadere informatie

Eerste deeltentamen Gameprogrammeren Vrijdag 25 september 2015, uur

Eerste deeltentamen Gameprogrammeren Vrijdag 25 september 2015, uur Naam: Eerste deeltentamen Gameprogrammeren Vrijdag 25 september 2015, 11.00-13.00 uur Studentnummer: Het tentamen bestaat uit 4 opgaven. Elke opgave levert 10 punten op. Je cijfer is het totaal aantal

Nadere informatie

Verder zijn er de nodige websites waarbij voorbeelden van objectgeoriënteerd PHP (of Objec Oriented PHP, OO PHP) te vinden zijn.

Verder zijn er de nodige websites waarbij voorbeelden van objectgeoriënteerd PHP (of Objec Oriented PHP, OO PHP) te vinden zijn. Objectgeoriënteerd PHP (versie 5) Kennisvereisten: Ervaring met programmeren in PHP met MySQL Je weet wat een class of klasse is Je weet wat een instantie van een klasse (een object) is Je weet wat een

Nadere informatie

Abstracte klassen & Interfaces

Abstracte klassen & Interfaces Abstracte klassen & Interfaces Overerving public class Vierhoek {... Vierhoek public class Rechthoek extends Vierhoek {... public class Ruit extends Vierhoek {... Rechthoek Ruit Elke rechthoek is een vierhoek.

Nadere informatie

Java. Basissyllabus. Egon Pas

Java. Basissyllabus. Egon Pas Java Basissyllabus Egon Pas 2011 BeanPole bvba Gasmeterlaan 92-9000 Gent BTW BE 472.902.516 Tel: + 32 9 224 42 17 Fax: + 32 9 223 62 88 www.beanpole.be info@beanpole.be 1 Programmeren 1.1 Hoe werkt een

Nadere informatie

Tentamen Inleiding Programmeren (IN1608WI), 2 februari 2012, 9.00-11.00, Technische Universiteit Delft, Faculteit EWI, Afdeling 2.

Tentamen Inleiding Programmeren (IN1608WI), 2 februari 2012, 9.00-11.00, Technische Universiteit Delft, Faculteit EWI, Afdeling 2. Tentamen Inleiding Programmeren (IN1608WI), 2 februari 2012, 9.00-11.00, Technische Universiteit Delft, Faculteit EWI, Afdeling 2. Gesloten boek tentamen, bij dit tentamen mag je geen gebmik maken van

Nadere informatie

Ontwerp van Informatiesystemen

Ontwerp van Informatiesystemen 1ste bach HIB Ontwerp van Informatiesystemen Prof. Verelst Q www.quickprinter.be uickprinter Koningstraat 13 2000 Antwerpen 112 2,50 Online samenvattingen kopen via www.quickprintershop.be Table of Contents

Nadere informatie

Tweede deeltentamen Imperatief programmeren versie 1 Vrijdag 20 oktober 2017, uur

Tweede deeltentamen Imperatief programmeren versie 1 Vrijdag 20 oktober 2017, uur Tweede deeltentamen Imperatief programmeren versie 1 Vrijdag 20 oktober 2017, 11.00-13.00 uur Schrijf op elk ingeleverd blad je naam. Schrijf op het eerste blad ook je studentnummer en het aantal ingeleverde

Nadere informatie

Derde deeltentamen Gameprogrammeren Vrijdag 7 november 2014, uur

Derde deeltentamen Gameprogrammeren Vrijdag 7 november 2014, uur Naam: Derde deeltentamen Gameprogrammeren Vrijdag 7 november 2014, 11.00-13.00 uur Studentnummer: Het tentamen bestaat uit 3 opgaven. Opgaven 1 levert 20 punten op, opgave 2 levert 10 punten op, en opgave

Nadere informatie

Beginselen van programmeren Practicum 1 (Doolhof) : Oplossing

Beginselen van programmeren Practicum 1 (Doolhof) : Oplossing Beginselen van programmeren Practicum 1 (Doolhof) : Oplossing Introductie In dit document geven we een mogelijke oplossing voor het eerste practicum. Deze oplossing gebruikt verschillende klassen en overerving,

Nadere informatie

Examen Programmeren 2e Bachelor Elektrotechniek en Computerwetenschappen Faculteit Ingenieurswetenschappen Academiejaar juni, 2010

Examen Programmeren 2e Bachelor Elektrotechniek en Computerwetenschappen Faculteit Ingenieurswetenschappen Academiejaar juni, 2010 Examen Programmeren 2e Bachelor Elektrotechniek en Computerwetenschappen Faculteit Ingenieurswetenschappen Academiejaar 2009-2010 16 juni, 2010 **BELANGRIJK** 1. Lees eerst de volledige opgave (inclusief

Nadere informatie

Scala. Korte introductie. Sylvia Stuurman

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

Nadere informatie

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

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

Uitwerking Tentamen Modelleren en Programmeren - versie 1 Woensdag 1 februari 2017, uur

Uitwerking Tentamen Modelleren en Programmeren - versie 1 Woensdag 1 februari 2017, uur Uitwerking Tentamen Modelleren en Programmeren - versie 1 Woensdag 1 februari 2017, 17 20 uur Schrijf op elk ingeleverd blad je naam. Schrijf op het eerste blad ook je studentnummer en het aantal ingeleverde

Nadere informatie

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

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

Nadere informatie

Objective-C Basis. 23 april 2005, Eindhoven Patrick Machielse

Objective-C Basis. 23 april 2005, Eindhoven Patrick Machielse Objective-C Basis 23 april 2005, Eindhoven Patrick Machielse patrick@hieper.nl Algemeen // extensies Objective-C code in bestanden met.m extensie // commentaar moet! /* Alles hiertussen wordt genegeerd

Nadere informatie

Noties Informatica. In java fungeren objecten als een model voor de elementen waarin een probleem kan worden opgesplitst

Noties Informatica. In java fungeren objecten als een model voor de elementen waarin een probleem kan worden opgesplitst s Informatica Hoofdstuk 1 Object Klasse Methode Parameters Type Velden Toestand Compiler Resultaten (returnwaarde) In java fungeren objecten als een model voor de elementen waarin een probleem kan worden

Nadere informatie

Programmeren in Java 3

Programmeren in Java 3 2 september 2007 voor deeltijdstudenten Kop van Zuid Rotterdam, 3 juni 2007 Even voorstellen Naam: Wessel Oele(31) Docent bij opleiding technische informatica Kamer: I210 (tweede verdieping, links de gang

Nadere informatie

Stacks and queues. Hoofdstuk 6

Stacks and queues. Hoofdstuk 6 Hoofdstuk 6 Stacks and queues I N T R O D U C T I E In dit hoofdstuk worden drie datastructuren stack, queue en deque behandeld. Om deze datastructuren te implementeren, worden onder andere arrays en linked

Nadere informatie

Uitwerking Eerste deeltentamen Mobiel programmeren - versie 1 Vrijdag 23 december 2016, uur

Uitwerking Eerste deeltentamen Mobiel programmeren - versie 1 Vrijdag 23 december 2016, uur Uitwerking Eerste deeltentamen Mobiel programmeren - versie 1 Vrijdag 23 december 2016, 11.00-13.00 uur 1. Een klasse is niet: (a) het type van een object (b) een groepje methoden (c) een groepje variabelen

Nadere informatie

Modelleren en Programmeren

Modelleren en Programmeren Modelleren en Programmeren Jeroen Bransen 18 december 2015 Overerving (inheritance) Constructors Overriding Inheritance demo Exceptions Zelf exceptions veroorzaken Overerving (inheritance) 2-dimensionaal

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

Veel succes! 1. Deze opgave bestaat uit een aantal vragen. Houd het antwoord kort: één of twee zinnen per onderdeel kan al genoeg zijn.

Veel succes! 1. Deze opgave bestaat uit een aantal vragen. Houd het antwoord kort: één of twee zinnen per onderdeel kan al genoeg zijn. Eerste deeltentamen Gameprogrammeren Vrijdag 26 september 2014, 8.30-10.30 uur Naam: Studentnummer: Het tentamen bestaat uit 4 opgaven. Elke opgave levert 10 punten op. Je cijfer is het totaal aantal punten

Nadere informatie

Programmeren in Java 3

Programmeren in Java 3 26 september 2007 Deze les korte herhaling vorige les Unified Modelling Language notatie van een class afleiding pointers abstracte classes polymorphisme dubieuze(?) constructies interfaces Meer over class

Nadere informatie

Programmeren I. 26 augustus Algemene Richtlijnen. Richtlijnen Programmeren 1

Programmeren I. 26 augustus Algemene Richtlijnen. Richtlijnen Programmeren 1 Algemene Richtlijnen Programmeren I 26 augustus 2015 Schrijf je naam bovenaan elk antwoordblad en kladblad. Schrijf niet met potlood of in het rood op je antwoordbladen. Gebruik voor elke vraag een afzonderlijk

Nadere informatie

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

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

Nadere informatie

4, nov 2011 Vakcode: 192110174

4, nov 2011 Vakcode: 192110174 l J Tentamen lnleiding Object-Georienteerd Programmeren 4, nov 2011 Vakcode: 192110174 Dit tentamen bestaat uit 5 opgaven waarvoor in totaal 90 punten zijn te halen. Het eindcijfer wordt bepaald met de

Nadere informatie

Uitwerking Tentamen Modelleren en Programmeren - versie 1 Woensdag 1 februari 2017, uur

Uitwerking Tentamen Modelleren en Programmeren - versie 1 Woensdag 1 februari 2017, uur Uitwerking Tentamen Modelleren en Programmeren - versie 1 Woensdag 1 februari 2017, 17 20 uur Schrijf op elk ingeleverd blad je naam. Schrijf op het eerste blad ook je studentnummer en het aantal ingeleverde

Nadere informatie

De sheets zijn gebaseerd op met name hoofdstuk. D. Bell en M. Parr, Java voor studenten, Prentice Hall,

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

Nadere informatie

Veel succes! 1. Deze opgave bestaat uit een aantal deelvragen. Houd het antwoord kort: één of twee zinnen per onderdeel kan al genoeg zijn.

Veel succes! 1. Deze opgave bestaat uit een aantal deelvragen. Houd het antwoord kort: één of twee zinnen per onderdeel kan al genoeg zijn. Derde deeltentamen Gameprogrammeren Vrijdag 6 november 2015, 11.00-13.00 uur Naam: Studentnummer: Het tentamen bestaat uit 3 opgaven. Opgaven 1 levert 14 punten op, opgave 2 levert 12 punten op, en opgave

Nadere informatie

Java Programma structuur

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

Nadere informatie

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

Derde deeltentamen Imperatief programmeren - versie 1 Vrijdag 11 november 2016, uur

Derde deeltentamen Imperatief programmeren - versie 1 Vrijdag 11 november 2016, uur Derde deeltentamen Imperatief programmeren - versie 1 Vrijdag 11 november 2016, 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 informatie

Uitwerkingen Derde deeltentamen Imperatief programmeren Vrijdag 12 november 2010, uur

Uitwerkingen Derde deeltentamen Imperatief programmeren Vrijdag 12 november 2010, uur 1. (telt voor 20%) Uitwerkingen Derde deeltentamen Imperatief programmeren Vrijdag 12 november 2010, 8.30-10.30 uur Bij het spel Reversi leggen twee spelers om de beurt een gekleurde steen op een veld

Nadere informatie

is eigenlijk overbodig!

is eigenlijk overbodig! Array Declaratie Creatie Opvragen Wijzigen Lengte is eigenlijk overbodig! array: oject dat een rij waarden bevat, met speciale notaties Invoegen Achtervoegen String [ ] a; a = new String[10]; a[5] a[5]

Nadere informatie

Programmeren 1 20 januari 2012 Prof. T. Schrijvers

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

Nadere informatie

Een gelinkte lijst in C#

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

Nadere informatie

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

Lessen Java: Reeks pag. 1

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

Nadere informatie

Tentamen Programmeren in C (EE1400)

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

Nadere informatie