Uitwerking Eerste deeltentamen Mobiel programmeren - versie 1 Vrijdag 22 december 2017, uur
|
|
- Hugo Visser
- 5 jaren geleden
- Aantal bezoeken:
Transcriptie
1 Uitwerking Eerste deeltentamen Mobiel programmeren - versie 1 Vrijdag 22 december 2017, uur 1. De symbolencombinatie /= betekent (a) hier begint een meer-regelig commentaar (b)... wordt één-... e deel van zichzelf (c)... is ongelijk aan... (d) de rest bij deling van... door... Toelichting op het antwoord: Meer-regelig commentaar begint met /*. Ongelijk-operator is!=. Rest bij deling is %. Het goede antwoord: x/=y is een afkorting van x=x/y. 2. Op welke plaats moet je de methode Invalidate uit de klasse View vooral niet aanroepen? (a) In de methode OnDraw (b) In de methode OnCreate (c) In een event-handler (d) In een constructormethode Toelichting op het antwoord: Invalidate zorgt ervoor dat OnDraw opnieuw wordt aangeroepen. Doe je dat vanuit OnDraw, dan gaat het eindeloos rondzingen. 3. Wat tekent de volgende OnDraw-methode? protected void OnDraw(Canvas c) for (int x=0; x<100; x++) for (int y=0; y<x; y++) c.drawrectangle(x, y, x+1, y+1, new Paint()); (a) een horizontale en een vertikale lijn (b) een diagonale lijn (c) een opgevulde driehoek (d) een opgevuld vierkant Toelichting op het antwoord: De eerste ronde, voor x=0, tekent 0 vierkantjes. Voor x=1 tekent het 1 vierkantje. Voor x=2 tekent het 2 vierkantjes, enzovoorts, en uiteindelijk onstaat zo een driehoek van vierkantjes. 4. Een variabele die in de header van een methode is gedeclareerd krijgt voor het eerst zijn waarde door (a) een toekenningsopdracht in de body van de methode (b) een toekenningsopdracht in de constructormethode (c) een expressie bij de aanroep van de methode (d) een expressie in de body van de methode Toelichting op het antwoord: Dit is het principe van aanroep van een methode met parameters. 1
2 5. Een interface zoals die in een library staat is een (a) specificatie van methoden die je moet schrijven in een klasse die de naam van de interface in zijn header heeft staan (b) definitie van methoden die je kunt aanroepen in een klasse die de naam van de interface in zijn header heeft staan (c) beschrijving van de variabelen waaruit een object bestaat dat de interface als type heeft (d) beschrijving van de events die een object dat de interface als type heeft kan genereren Toelichting op het antwoord: Een interface is een rijtje methodeheaders. Zo specificeert bijvoorbeeld ILocationListener dat er een methode OnLocationChanged is. In je eigen klasse Kaart kun je in de header schrijven : View, ILocationListener. In die klasse moet je dan de bewuste methoden schrijven. 6. Na dit programmafragment bevat k Random gen = new Random(); Color k = new Color(gen.Next(100), gen.next(100), gen.next(100)); (a) een willekeurige kleur gekozen uit alle mogelijke kleuren (b) een willekeurige, maar tamelijk donkere kleur (c) een willekeurige grijswaarde uit het hele scala tussen wit en zwart (d) een willekeurige, maar tamelijk lichte grijswaarde Toelichting op het antwoord: Elke aanroep van Next genereert opnieuw een random waarde. Deze zullen meestal verschillend zijn, er onstaat dus echt een kleur en niet alleen een grijswaarde. De maximale waarde voor kleuren is 255, dus met 100 ontstaan alleen relatief donkere kleuren. 7. Een bool-expressie kan niet gebruikt worden (a) tussen haakjes achter while (b) tussen haakjes achter if (c) tussen haakjes achter catch (d) tussen haakjes achter return Toelichting op het antwoord: Achter catch staat een declaratie van een Exception. Op de andere plaatsen staat een expressie, die dus ook een bool-expressie kan zijn. De expressie achter return hoeft niet tussen haakjes, maar het mag wel. 8. De methode Parse van klasses uit de library wordt meestal gebruikt (a) om een waarde van die klasse te converteren naar een getal (b) om een getal te converteren naar een waarde van die klasse (c) om een waarde van die klasse om te zetten naar een string (d) om een string om te zetten in een waarde van die klasse Toelichting op het antwoord: Je gebruikt bijvoorbeeld int.parse("123"). Die klasse is in dit voorbeeld int. Een waarde van die klasse hoeft dus geconverteerd te worden naar een getal: dat is hij al. Andersom ook niet. Omzetten naar een string gebeurt met ToString; Parse is bedoeld om te converteren van string naar die klasse. 9. Iemand schrijft een methode om een getal x tot een niet-negatieve macht e te verheffen: 2
3 int Macht(int x, int e) int res = 1; for (int t=1; t<=e; t++) x *= res; return res; Welk ongewenst effect heeft deze methode? (a) de herhaling gaat één stap te lang door (b) het werkt niet als e gelijk is aan 0 (c) het werkt niet als x gelijk is aan 1 (d) de uitkomst is altijd 1 Toelichting op het antwoord: Het gaat niet te lang door: weliswaar staat er <=, en dat is gevaarlijk, maar omdat de teller bij 1 begint gaat het toch goed. De uitkomst is inderdaad altijd 1: nadat res de waarde 1 heeft gekregen, verandert hij nooit meer. Aan het eind is hij dus nog steeds 1, en dat was natuurlijk niet de bedoeling. De bug in het programma is de opdracht x *= res;. Dit had moeten zijn: res *= x;. Doordat het antwoord altijd 1 is, werkt de methode juist wel als e==0 of x== Een app die breder is dan hoog krijg je (a) met een bepaalde ScreenOrientation in een ActivityAttribute (b) met een bepaalde Orientation in een LinearLayout (c) met een bepaalde hoek in PostRotate van een Matrix (d) met een Rect waarvan de Width groter is dan de Height Toelichting op het antwoord: Een Orientation is voor de ordening van een rijtje buttons o.i.d. ten opzichte van elkaar. Drie open vragen (3 keer 10 punten) 11. Beschrijf in het kort: a. Wat is een object? b. Een methode bewerkt een object, anders gezegd: heeft een object onder handen. Maar niet elke methode kan zomaar elk object onder handen nemen. Aan welke voorwaarde moet er voldaan zijn? c. Sommige methoden hebben niet een object onder handen. Wat voor soort methoden zijn dat, en wat voor beperkingen brengt dat met zich mee in de body van zo n methode? Een object is een groepje variabelen. Het object dat een methode onder handen heeft moet als type hebben: de klasse waarin de methode staat. Static methoden hebben geen object onder handen. Ze mogen de variabelen boven in de klasse niet gebruiken. Of: ze mogen this niet gebruiken. 12. In het voorbeeldprogramma Kompas wordt een geroteerde, geschaalde bitmap op het scherm getekend door middel van: Matrix mat = new Matrix(); mat.posttranslate(-this.plaatje.width / 2, -this.plaatje.height / 2); mat.postscale(this.schaal, this.schaal); mat.postrotate(-this.hoek); mat.posttranslate(this.width / 2, this.height / 2); canvas.drawbitmap(this.plaatje, mat, verf); 3
4 a. waartoe dient, in het algemeen gesproken, het Matrix-object dat aan DrawBitmap wordt meegegeven? b. wat is het effect van de aanroep van de methode PostTranslate? c. hoe werken de twee aanroepen van PostTranslate samen om het plaatje op de gewenste manier te laten tekenen? Met een Matrix specificeer je een geometrische transformatie waaraan het getekende wordt onderworpen. PostTranslate zorgt dat de bitmap verschoven wordt getekend. De eerste aanroep verschuift het plaatje zo dat het midden in de linkerbovenhoek van het scherm ligt. Rotatie en schaling gebeurt ten opzichte van dit punt, en zo draait het plaatje dus netjes om zijn as. Daarna wordt het naar het midden van het scherm geschoven. 13. Hieronder staan 16 fragmenten uit een programma, waarbij Paint, Color, Point, DateTime, Button en View uit de standaard-libraries komen. Schrijf op je antwoordblad een blok van 4 bij 4 vakjes en zet in elk vakje een letter passend bij het overeenkomstige fragment: T als het programmafragment een type is E als het programmafragment een expressie O als het programmafragment een opdracht is D als het programmafragment een declaratie is H als het programmafragment een methode-header is X als het programmafragment geen van bovenstaande dingen is ; Paint p(color c) DateTime now; if x<0 x=-x; float new Point(0,0) return 3+1; Button (int)3.5 string s="\" public y=x==x; void m(int 3) float a=0; null!=null View.Width O H D X T E O T E X X O X D E X Toelichting op het antwoord: rij 1 item 1: een losse puntkomma is ook een opdracht. (Daarom is het zo gevaarlijk om een puntkomma te schrijven na een while- of for-header). rij 1 item 3: je mag de variabele noemen hoe je wilt; dit heeft dus niets te maken met de bestaande property DateTime.Now rij 1 item 4: dit hadden ronde haakjes moeten zijn rij 3 item 1: de cast rondt de floating-point constante af tot 3, dat is een goede expressie rij 3 item 2: de string is niet afgesloten, want de backslash zorgt ervoor dat de tweede quote zelf in de string komt te staan. De afsluitende puntkomma van de declaratie ontbreekt trouwens ook. 4
5 rij 3 item 3: public is een van de mogelijke modifiers van een methodeheader of een declaratie, maar het is niet het return-type. rij 3 item 4: y is blijkbaar een bool variabele, die de waarde true krijgt. rij 4 item 1: in plaats van 3 had hier een variabele-naam moeten staan rij 4 item 3: de waarde van deze expressie is false, maar het is een goede expressie. rij 4 item 4: Width is niet static, dus in plaats van de klasse-naam View had hier de naam van een bepaalde view-variabele moeten staan. Programmeervraag (30 punten) 14. In deze opgave mag je de using-regels, en de ActivityAttribute[...]-specificatie weglaten. We gaan een app maken die een kerstbal tekent. In de afbeelding zie je vier snapshots van de app in werking. Er is een knop zichtbaar met het opschrift Cirkel erbij, en daaronder een tekening van de kerstbal. Aan het begin (afb. 1) is er linksboven in de hoek nog net een kwart cirkeltje zichtbaar. Als de gebruiker de tekening aanraakt, verplaatst de cirkel naar die plek, en zie je dat er ook nog een opgevulde cirkel boven zit (afb. 2). De open cirkel is gecentreerd op het punt waar het scherm is aangeraakt. De straal van de cirkels is 20 beeldpunten. Elke keer als de gebruiker op de knop drukt, komt er een open cirkel bij. In afb. 3 is dat 11 keer gedaan. De opgevulde cirkel blijft bovenop de kerstbal zitten. In afb. 4 heeft de gebruiker nog 3 keer op de knop gedrukt, en ook het scherm ergens anders aangeraakt. (a) Schrijf de klasse waarin de user-interface wordt opgebouwd. Hint: zet de event-handler van de knop in de klasse die je in onderdeel (b) gaat schrijven. public class KerstbalActivity : Activity Button knop; KerstbalView plaatje; protected override void OnCreate(Bundle b) base.oncreate(b); knop = new Button(this); plaatje = new KerstbalView(this); 5
6 knop.click += plaatje.klik; knop.text = "Cirkel erbij"; LinearLayout lay = new LinearLayout(this); lay.orientation = Orientation.Vertical; lay.addview(knop); lay.addview(plaatje); SetContentView(lay); (b) Schrijf de klasse waarin de eigenlijke tekening wordt gemaakt. Hint: standaard wordt een cirkel opgevuld getekend. Om alleen de rand te tekenen, moet je eerst de methode SetStyle van de Paint aanroepen. public class KerstbalView : View int n = 1; PointF p = new PointF(0, 0); public KerstbalView(Context c) : base(c) this.setbackgroundcolor(color.white); this.touch += Raakaan; protected override void OnDraw(Canvas c) Paint verf = new Paint(); c.drawcircle(p.x, p.y - n * 20-20, 20, verf); verf.setstyle(paint.style.stroke); verf.strokewidth = 2; for (int t=1; t<=n; t++) c.drawcircle(p.x, p.y, t * 20, verf); public void Raakaan(object o, TouchEventArgs tea) p = new PointF(tea.Event.GetX(), tea.event.gety()); this.invalidate(); public void Klik(object o, EventArgs ea) n++; this.invalidate(); 6
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 informatieUitwerking Eerste deeltentamen Mobiel programmeren - versie 1 Vrijdag 21 december 2018, uur
Uitwerking Eerste deeltentamen Mobiel programmeren - versie 1 Vrijdag 21 december 2018, 8.30 10.30 uur 1. Gegeven zijn de integer variabele x en de string variabele s. Welke van de volgende uitspraken
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 informatieActivity. Bij het starten van een app: Operating system maakt een Activity -object aan. en neemt dat onderhanden met de methode OnCreate( )
Activity Bij het starten van een app: Operating system maakt een Activity -object aan en neemt dat onderhanden met de methode OnCreate( ) Klasse uit library Android.App Methode uit klasse Activity eigen
Nadere informatieUitwerking Tweede deeltentamen Mobiel programmeren - versie 1 Vrijdag 2 februari 2018, uur
Uitwerking Tweede deeltentamen Mobiel programmeren - versie 1 Vrijdag 2 februari 2018, 8.30-10.30 uur 1. Een Intent-object wordt gebruikt voor communicatie (a) van een Activity naar een bijbehorende View
Nadere informatieActivity. Bij het starten van een app: Operating system maakt een Activity -object aan. en neemt dat onderhanden met de methode OnCreate( )
Activity Bij het starten van een app: Operating system maakt een Activity -object aan en neemt dat onderhanden met de methode OnCreate( ) Klasse uit library Android.App Methode uit klasse Activity Maak
Nadere informatiewat is er nodig om een ISensorEventListener te zijn?
Interface In de library interface ISensorEventListener { public void OnSensorChanged(SensorEvent s); public void OnAccuracyChanged(SensorEvent s); In je eigen programma class KompasView : View, ISensorEventListener
Nadere informatieprogrammeren Mobiel Mobilofoon 1960 Apple iphone 2007 met ios Nokia Samsung S met Android Motorola Dyna-Tac 1973
Mobiel programmeren Mobilofoon 1960 Nokia 3310 2000 Apple iphone 2007 met ios Motorola Dyna-Tac 1973 Samsung S7 2016 met Android Programmeertalen Fortran Basic C++ C# Android Algol C Java... 1950 1960
Nadere informatieKompas. zijn klasse. protected override void OnDraw(Canvas canv) { base.ondraw(canv);
Kompas class KompasView : View, ISensorEventListener { Bitmap b; float Schaal; float Hoek; public KompasView(Context belooft c) : methodes base(c) { b = BitmapFactory.DecodeResource(...UU...); SensorManager
Nadere informatieUitwerking Tweede deeltentamen Mobiel programmeren - versie 1 Vrijdag 29 januari 2016, uur
Uitwerking Tweede deeltentamen Mobiel programmeren - versie 1 Vrijdag 29 januari 2016, 11.00-13.00 uur 1. Een static methode (a) Kan niet vanuit een andere klasse worden aangeroepen (b) Kan geen methoden
Nadere informatieUitwerking Tweede deeltentamen Mobiel programmeren - versie 1 Vrijdag 3 februari 2017, uur
Uitwerking Tweede deeltentamen Mobiel programmeren - versie 1 Vrijdag 3 februari 2017, 8.30-10.30 uur 1. Wat kan gezegd worden van het stukje programma b=!b (a) De expressie b=!b heeft altijd de waarde
Nadere informatieUitwerking Aanvullende toets Mobiel programmeren - versie 1 Woensdag 23 maart 2016, uur
Uitwerking Aanvullende toets Mobiel programmeren - versie 1 Woensdag 23 maart 2016, 13.30-15.30 uur 1. Een static methode (a) Heeft geen parameters (b) Heeft geen resultaatwaarde (c) Heeft geen object
Nadere informatieTweede deeltentamen Mobiel programmeren - versie 1 Vrijdag 29 januari 2016, uur
Tweede deeltentamen Mobiel programmeren - versie 1 Vrijdag 29 januari 2016, 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 informatieIntent. Intent: bedoeling om een nieuwe activiteit te starten. eigen activiteit. standard. Hallo Teller. web-browser text-sender
Multi Intent Intent: bedoeling om een nieuwe activiteit te starten eigen activiteit Hallo Teller standard web-browser text-sender Intent: Hallo opstarten public class Multi : Activity Button b1, b2, b3,
Nadere informatieTweede deeltentamen Mobiel programmeren - versie 1 Vrijdag 3 februari 2017, uur
Tweede deeltentamen Mobiel programmeren - versie 1 Vrijdag 3 februari 2017, 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 informatieUitwerking 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 informatieAanvullende toets Mobiel programmeren - versie 1 Woensdag 23 maart 2016, uur
Aanvullende toets Mobiel programmeren - versie 1 Woensdag 23 maart 2016, 13.30-15.30 uur Schrijf op elk ingeleverd blad je naam. Schrijf op het eerste blad ook je studentnummer en het aantal ingeleverde
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 informatieVersie 2: B C D D A C D A C C. Versie 3: C D A A B D A B D D. Versie 4: A D C C B D C B D D. Versie 5: B A D D C A D C A A
Uitwerking Tweede deeltentamen Mobiel programmeren - versie 1 Vrijdag 1 februari 2019, 11.00 13.00 uur Voor de meerkeuzevragen hebben we verschillende versies. Dit zijn de juiste antwoorden per versie.
Nadere informatieUitwerking 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 informatieVeel 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 27 september 2013, 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 informatieDerde 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 informatieB.3 Serie 3. B.3 Serie 3 7
B.3 Serie 3 7 B.3 Serie 3 3.1 Android-klassen Voor welk doel maak je een subklasse van de volgende klassen? Welke methoden zitten daar dan in ieder geval in, en wat is de taak van die methoden? Activity
Nadere informatieTouch & go. Hoofdstuk 6. 6.1 Touch
69 Hoofdstuk 6 Touch & go In hoofdstuk 3 zagen we hoe je een button laat reageren als de gebruiker hem indrukt, door een eventhandler te koppelen aan het Click-event. In hoofdstuk 4 zagen we hoe je op
Nadere informatieDerde deeltentamen Imperatief programmeren - versie 1 Vrijdag 7 november 2014, uur
Derde deeltentamen Imperatief programmeren - versie 1 Vrijdag 7 november 2014, 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 informatieSyntax van opdracht. opdracht. expressie. variabele. = expressie ; klasse naam. methode naam. property naam += object
Syntax van opdracht opdracht klasse naam methode naam ( expressie ) ; object expressie. property naam +=, variabele = expressie ; Static gewone methoden Bewerken een object Aanroep: object. methode ( )
Nadere informatieEerste 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 informatieDit hoofdstuk is niet een herhaling, maar gaat over herhaling in C#, en is dus nieuw!
87 Hoofdstuk 7 Herhaling en keuze Dit hoofdstuk is niet een herhaling, maar gaat over herhaling in C#, en is dus nieuw! 7.1 De while-opdracht Opdrachten herhalen In het vorige hoofdstuk zagen we de foreach-opdracht,
Nadere informatieUitwerking 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 informatieDerde deeltentamen Imperatief programmeren - versie 1 Vrijdag 9 november 2018, uur
Derde deeltentamen Imperatief programmeren - versie 1 Vrijdag 9 november 2018, 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 informatieTweede 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 informatieUitwerking Derde deeltentamen Imperatief programmeren - versie 1 Vrijdag 6 november 2015, 11.00-13.00 uur
Uitwerking 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
Nadere informatieMethoden om te tekenen
37 Hoofdstuk 4 Methoden om te tekenen 4.1 Een eigen subklasse van View Grafische uitvoer Door het combineren van View-objecten, zoals TextView en Button, in een LinearLayout kun je een complexe scherm-layout
Nadere informatieVeel 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 informatieUitwerking Tweede deeltentamen Imperatief programmeren Vrijdag 19 oktober 2012, uur
Uitwerking Tweede deeltentamen Imperatief programmeren Vrijdag 19 oktober 2012, 11.00-13.00 uur 1. Deze opgave bestaat uit een aantal tekstvragen. Houd het antwoord kort: een of twee zinnen per onderdeel
Nadere informatieDerde deeltentamen Imperatief programmeren - versie 1 Vrijdag 10 november 2017, uur
Derde deeltentamen Imperatief programmeren - versie 1 Vrijdag 10 november 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 informatieFiguur 7: De KlikkerApp in werking
27 Hoofdstuk 3 En... aktie! De apps in het vorige hoofdstuk waren alleen om naar te kijken. Maar een touchscreen heet niet voor niets een touchscreen: je wilt ook dat er iets gebeurt als je het aanraakt!
Nadere informatieKlassen. Hoofdstuk Klassen
212 Hoofdstuk 12 Klassen blz. 213 blz. 214 12.1 Klassen Een klasse is een groepje methoden. Dat hebben we in de programma s tot nu toe wel gezien: we definieerden steeds een of meerdere klassen (in ieder
Nadere informatieUitwerkingen 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 informatieUitwerking Tweede deeltentamen Imperatief programmeren versie 1 Vrijdag 20 oktober 2017, uur
Uitwerking Tweede deeltentamen Imperatief programmeren versie 1 Vrijdag 20 oktober 2017, 11.00-13.00 uur 1. In een constructormethode (a) moet je een nieuw object van de klasse aanmaken (b) kun je membervariabelen
Nadere informatievandaag èn vrijdag deadline maandag 12 dec.
vandaag èn vrijdag deadline maandag 12 dec. Herhaling met een teller int t ; t = 0; for while ( ( t=0 t
Nadere informatieAanvullende 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 informatieDerde 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 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 informatieUitwerking Derde deeltentamen Imperatief programmeren - versie 1 Vrijdag 10 november 2017, uur
Uitwerking Derde deeltentamen Imperatief programmeren - versie 1 Vrijdag 10 november 2017, 11.00-13.00 uur Schrijf op elk ingeleverd blad je naam. Schrijf op het eerste blad ook je studentnummer en het
Nadere informatieUitwerkingen 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 informatieHoofdstuk 9.4. Letterfrequentie turven
Hoofdstuk 9.4 Letterfrequentie turven Arrays Array: rij genummerde variabelen declaratie van een array tabel 5 length int [ ] tabel; 0 1 tabel = new int [5]; creëren van het eigenlijke array-object 2 3
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 informatieb.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 informatieUitwerkingen 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 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 informatieVeel 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 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 informatieNAAM: 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 informatieUitwerkingen 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 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 informatieGoede bedoelingen. Hoofdstuk 8. 8.1 Een App met meerdere activiteiten. 8.2 Dialogen
103 Hoofdstuk 8 Goede bedoelingen 8.1 Een App met meerdere activiteiten Activity en View Tot nu toe bestonden onze apps uit één (subklasse van) Activity, die in zijn content view gegevens aan de gebruiker
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 informatieUitwerking Tweede deeltentamen Imperatief programmeren Vrijdag 18 oktober 2013, uur
Uitwerking Tweede deeltentamen Imperatief programmeren Vrijdag 18 oktober 2013, 11.00-13.00 uur 1. (a) Wat is een null pointer? In welke situatie onstaat er een null pointer exception? Een null pointer
Nadere informatieis 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 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 informatieOmschrijf 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 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 informatieDe 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 informatieUitwerking Tweede deeltentamen Imperatief programmeren Vrijdag 21 oktober 2011, uur
Uitwerking Tweede deeltentamen Imperatief programmeren Vrijdag 21 oktober 2011, 11.00-13.00 uur 1. Deze opgave bestaat uit een aantal tekstvragen. Houd het antwoord kort: een of twee zinnen per onderdeel
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 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 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 informatieVeel 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 informatieWerkcollege-opgaven. Bijlage B
1 Bijlage B Werkcollege-opgaven 2.1 Programmeerparadigma s Waar of niet waar (en waarom?) a. Alle imperatieve talen zijn object-georiënteerd. b. Er zijn object-georiënteerde talen die niet procedureel
Nadere informatieHallo, App! Hoofdstuk 2. 2.1 Soorten programma s
13 Hoofdstuk 2 Hallo, App! 2.1 Soorten programma s C# is opgezet als universele programmeertaal. De taalconstructies zijn hetzelfde, of het nu om een fotobewerkingsprogramma, een agenda-app, of een game
Nadere informatieObjectgeorië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 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 informatieWindows-applicatie. using System.Windows.Forms; using System.Drawing; class HalloWin1 { static void Main ( )
Windows-applicatie using System.Windows.Forms; using System.Drawing; class HalloWin1 { static void Main ( ) { Form scherm; declaratie en toekenning van een variabele met type Form scherm = new Form( );
Nadere informatieAndroid apps met App Inventor 2 antwoorden
2014 Android apps met App Inventor 2 antwoorden F. Vonk versie 1 11-11-2014 inhoudsopgave Mollen Meppen... - 2 - Schrandere Scholier... - 15 - Meteoor... - 21 - Dit werk is gelicenseerd onder een Creative
Nadere informatieLabo 2 Programmeren II
Labo 2 Programmeren II L. Schoofs K. van Assche Gebruik Visual Studio 2005 om een programma te ontwikkelen dat eenvoudige grafieken tekent. Deze opgave heb je vorig academiejaar reeds in Java geïmplementeerd.
Nadere informatieDerde 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 informatieGraphics. Small Basic graphics 1/6
Small Basic graphics 1/6 Graphics Naast het werken met tekst kan je in Small Basic ook werken met grafische elementen: lijnen, vormen en kleuren. Hierbij gebruik je het grafische venster met de witte achtergrond.
Nadere informatieModelleren 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 informatieX. Grafische elementen
X. Grafische elementen Om u te helpen bij grafische voorstellingen heeft java een aantal grafische afbeeldingen die u kunt gebruiken. Meestal worden zij in de methode paint(graphics g) geplaatst. Zij moeten
Nadere informatieIMP 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 informatieUitwerking Derde deeltentamen Imperatief programmeren - versie 1 Vrijdag 11 november 2016, uur
Uitwerking 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
Nadere informatieSyntax van opdrachten
Syntax van opdrachten opdracht klasse naam methode naam ( expressie ) ; object expressie. property naam +=, variabele = expressie ; return expressie ; if ( expressie ) opdracht blok else opdracht foreach
Nadere informatieProgrammeren in Java les 3
4 september 2015 Deze les korte herhaling vorige week loops methodes Variabelen Soorten variabelen in Java: integer: een geheel getal, bijv. 1,2,3,4 float: een gebroken getal, bijv. 3.1415 double: een
Nadere informatieUitwerking Aanvullend tentamen Imperatief programmeren Maandag 14 maart 2011, uur
Uitwerking Aanvullend tentamen Imperatief programmeren Maandag 14 maart 2011, 9.00 12.00 uur 1. Voor de implementatie van het spel Reversi schrijft iemand de volgende klasse. Het speelbord wordt gerepresenteerd
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 informatieKlassen & objecten, overerving, abstracte klassen, debuggen, interfaces, formulieren, polymorfie, statische methoden, event-handlers
1 Inhoud Klassen & objecten, overerving, abstracte klassen, debuggen, interfaces, formulieren, polymorfie, statische methoden, event-handlers 2 Geluidsbronnen simulator, deel 2 Inleiding De weergave versnellen
Nadere informatieVeel 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 informatieUitwerkingen aanvullende toets Gameprogrammeren (INFOB1GP) Vrijdag 4 januari 2013, uur
Uitwerkingen aanvullende toets Gameprogrammeren (INFOB1GP) Vrijdag 4 januari 2013, 11.00-13.00 uur 1. Deze opgave bestaat uit een aantal vragen. Houd het antwoord kort: één of twee zinnen per onderdeel
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 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 informatieAPPLICATIEBOUW 2E COLLEGE: ONTWERPEN, GEBRUIKERSINTERFACES, VARIABELEN & EXPRESSIES. Onderdeel van SmartProducts
APPLICATIEBOUW 2E COLLEGE: ONTWERPEN, GEBRUIKERSINTERFACES, VARIABELEN & EXPRESSIES Onderdeel van SmartProducts INHOUD COLLEGE 2 module4.io.utwente.nl/applicatiebouw Software ontwerpen Gebruikersinterfaces,
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 informatieAanvullende toets Gameprogrammeren (INFOB1GP) Vrijdag 4 januari 2013, uur
Naam: Aanvullende toets Gameprogrammeren (INFOB1GP) Vrijdag 4 januari 2013, 11.00-13.00 uur Studentnummer: Het tentamen bestaat uit 2 opgaven. De eerste opgave levert 15 punten op, de tweede opgave 25
Nadere informatieProgrammeren in C# Samenvatting van C#
Programmeren in C# Samenvatting van C# Proceduraal Programmeren Functies (O: void + return, I: referentie of value) Arrays, Lijsten Lussen (for, while, do while) Condities, if-else, switch Variabelen,
Nadere informatieeerste voorbeelden in Java
Beginselen van programmeren 2 eerste voorbeelden in Java vereisten: een editor: om programma in te tikken en te bewaren een Java compiler: zet ingetikte (bron-) programma om naar byte-code een Java Virtuele
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 informatieNieuwe invoercellen voeg je toe door de cursor tussen twee cellen in te zetten, en invoer in te tikken.
Technische Universiteit Eindhoven, 2007 Complexe getallen Mathematica In een invoercel kun je Mathematica commando's invullen. Door op Shift + Enter te drukken laat je Mathematica de berekening uitvoeren.
Nadere informatieOvererving & 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 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 informatie