Academie voor ICT en Media 2013/2014

Vergelijkbare documenten
HOGESCHOOL VAN AMSTERDAM Informatica Opleiding. CPP 1 van 10

Technology, Innovation & Society Delft

Hoofdstuk 1: Inleiding. Hoofdstuk 2: Klassen en objecten Datahiding: afschermen van implementatiedetails. Naar de buitenwereld toe enkel interfaces.

C++ programmeermethoden Bachelor Kunstmatige Intelligentie

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

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

C++ programmeermethoden Bachelor Kunstmatige Intelligentie

VOORBLAD SCHRIFTELIJKE TOETSEN

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

IMP Uitwerking week 13

VOORBLAD SCHRIFTELIJKE TOETSEN

Advanced C ++ Programming Datastructuren 2018

Veel succes! 1. Gegeven is de volgende klasse:

Tentamen Object Georiënteerd Programmeren TI januari 2013, Afdeling SCT, Faculteit EWI, TU Delft

int getaantalpassagiers{): void setaantalpassagiers(int aantalpassagiers);

Universiteit van Amsterdam FNWI. Voorbeeld van tussentoets Inleiding programmeren

Technology, Innovation & Society Delft

Examen Software Ontwikkeling I 2e Bachelor Informatica Academiejaar Januari, **BELANGRIJK** : Schrijf je naam onderaan dit blad

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.

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

Technology, Innovation & Society Delft

Aanvullende toets Gameprogrammeren Woensdag 5 januari 2011, uur

Derde deeltentamen Gameprogrammeren Vrijdag 7 november 2014, uur

Datastructuren Werkcollege Intro

3 e jaars GameTech student C++ voor hobby, eerste programmeertaal Assistent bij een heleboel vakken

Tweede deeltentamen Gameprogrammeren Vrijdag 17 oktober 2014, uur

Inleiding C++ Coding Conventions

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

Tentamen Objectgeorienteerd Programmeren TI februari Afdeling ST Faculteit EWI TU Delft

/20. richtlijnen. Lees deze richtlijnen! Log in op de pc met. login: paswoord: examen i examen001. Log in op. x.toledo.ucll.be

Ingebouwde klassen & methodes

Tentamen Objectgeorienteerd Programmeren IN1205 Voorbeeld

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

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

Programmeermethoden. Controle-structuren. Walter Kosters. week 3: september kosterswa/pm/

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

Software-Ontwikkeling I Academiejaar

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

Inleiding Software Engineering! Unit Testing, Contracten, Debugger! 13 Februari 2014!

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

Uitwerkingen Tweede deeltentamen Imperatief programmeren Vrijdag 15 oktober 2010, uur

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

Derde deeltentamen Imperatief programmeren - versie 1 Vrijdag 9 november 2018, uur

Tentamen Imperatief Programmeren

Modelleren en Programmeren

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

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

TENTAMEN Programmeren 1

Graphics, input & more!

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

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

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

Datastructuren: stapels, rijen en binaire bomen

Modeleren. Modelleren. Together UML. Waarvan maken we een model? overzicht les 14 t/m 18. ControlCenter 6.2

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

Modulewijzer Tirdat01

Online c++ leren programmeren:

Datastructuren en algoritmen

NAAM: Programmeren 1 Examen 21/01/2011

C++ C++ als een verbetering van C. Abstracte datatypen met classes. Constructoren en destructoren. Subklassen. binding van functies

Uitwerkingen derde deeltentamen Gameprogrammeren Vrijdag 6 november 2015, uur

Technology, Innovation & Society Delft

Kwis (3) class X { public void a() { System.out.println("x"); public static void main(string[] args) { X x = new X();

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

Tweede deeltentamen Mobiel programmeren - versie 1 Vrijdag 3 februari 2017, uur

Eerste deeltentamen Gameprogrammeren Vrijdag 25 september 2015, uur

1e college Introductie Applicatiebouw. Applicatiebouw{ } Onderdeel van SmartProducts

Gertjan Laan Aan de slag met C++ Vijfde editie

datastructuren college 13

De Leidsche Flesch Studievereniging voor Natuurkunde, Sterrenkunde, Wiskunde en Informatica sinds DLF Pointerworkshop

DIAGNOSTISCHE TOETS Softwaresystemen UITWERKING

Derde deeltentamen Imperatief programmeren - versie 1 Vrijdag 7 november 2014, uur

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

Tentamen Programmeren in C (EE1400)

Vraag 1: HashTable [op 2 punten van de 20] Gegeven de header file HashTable.h van een hashtabel die pointers naar strings bijhoudt (in bijlage).

Datastructuren: stapels, rijen en binaire bomen

APPLICATIEBOUW 2E COLLEGE: ONTWERPEN, GEBRUIKERSINTERFACES, VARIABELEN & EXPRESSIES. Onderdeel van SmartProducts

Design patterns Startbijeenkomst

Introductie in C++ Jan van Rijn. September 2013

Tentamen Programmeren in C (EE1400)

Programmeren in C++ Efficiënte zoekfunctie in een boek

Tentamen Object Georiënteerd Programmeren TI oktober 2014, Afdeling SCT, Faculteit EWI, TU Delft

Labo 1 Programmeren II

Project network. Gebaseerd op paragrafen , uit het boek. We simuleren een sociaal netwerk

Modelleren en Programmeren

Tweede deeltentamen Mobiel programmeren - versie 1 Vrijdag 29 januari 2016, uur

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

Abstracte klassen & Interfaces

Demo document template available on the Rapptorlab website

APPLICATIEBOUW 3E COLLEGE: OBJECT GEORIËNTEERD PROGRAMMEREN, METHODEN, PARAMETERS, SCOPE VAN VARIABELEN. Onderdeel van SmartProducts

Tentamen in2705 Software Engineering

Real-Time Systems (RTSYST)

NHibernate als ORM oplossing

Overerving & Polymorfisme

Teamhandleiding DOMjudge (versie 2.2.0muKP) 31 mei 2008

Derde deeltentamen Gameprogrammeren Vrijdag 9 november 2012, uur

Modelleren & Programmeren. Jeroen Fokker

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

Oefententamen 2. Tijd: 2 uur. Maximaal aantal punten: 30. Naam: Studentnummer:

Transcriptie:

Academie voor ICT en Media 2013/2014 Toets Opleiding BI CMD I IDM ISM TI Voltijd Deeltijd Duaal Lokatie Den Haag Zoetermeer Delft 1e afname moment herkansing Verantwoordelijke docent John Visser Module / Blok TI-D-OO-01-13 Datum proeftoets Tijd 9.00 10.40 Toegestane hulpmiddelen boeken,dictaten,sheets Alleen toegestane hulpmiddelen mogen binnen handbereik zijn. Alle overige zaken (b.v. telefoon /smartphone, etui, eigen papier) moeten weggeborgen zijn in een afgesloten tas, of ingeleverd zijn bij de surveillant. Aantal pagina s 4 Aantal opgaven 2 Aantal bijlagen 0 Totaal aantal te behalen punten 90 Antwoorden inleveren op: Schrapkaart Toets Toetspapier Opgaven inleveren Bij een tentamen dat uit meer dan één onderdeel bestaat, de uitwerkingen per onderdeel op een apart antwoordblad inleveren. ZET JE NAAM, STUDENTNUMMER EN EVENTUEEL GROEPSNUMMER OP ELK ANTWOORDBLAD / SCHRAPKAART!!!!

Bestudeer de programmacode hieronder en de bijbehorende main-functie. Beantwoord de vragen op de volgende pagina, die betrekking hebben op deze code. #include <string> using namespace std; class Boek private: string titel; bool uitgeleend; ; public: Boek(string); bool isuitgeleend()const; string boektitel() const; void leenuit(); virtual void naarvolgendeblz()= 0; bool Boek::isUitgeleend() const return uitgeleend; string Boek::boekTitel() const return titel; void Boek::leenUit() uitgeleend=true; class Bibliotheek private: std::vector<boek*> boeken; ; public: bool isuitgeleend(string) const; void voegboektoe(boek* aboek); bool Bibliotheek::isUitgeleend(string t) const //is het boek met titel t uitgeleend? void Bibliotheek::voegBoekToe(Boek* aboek) //voeg aboek toe int main() Papierenboek pb1("praktisch UML"); Digitaleboek * digib1=new Digitaleboek("inleiding C++"); Boek* db1=digib1; Bibliotheek bib; bib.voegboektoe(&pb1); bool b=bib.isuitgeleend("inleiding C++"); if(b) cout<<"helaas"<<endl; delete db1; return 0;

Opgave 1: A: Waarom is de functie void leenuit(); van de klasse Boek geen const? B:Kan behalve een object van de klassen Papierenboek en Digitaleboek ook een object van de klasse Boek aangemaakt worden. Geef een korte uitleg waarom dit wel of niet zou kunnen. C:Wat is het resultaat wanneer virtual wordt weggelaten uit de volgende methode declaratie virtual void naarvolgendeblz()= 0; D:Is in de main code sprake van een memory leak, geef een korte uitleg. E:Is in de main code sprake van het slicing probleem, geef een korte uitleg. F:Geef het statement in de functie int main() (programmacode) om de digitaleboek db1 aan de bibliotheek toe te voegen. G:Geef de implementatie (programmacode) van de methode void voegboektoe(boek* aboek); van de klasse Bibliotheek. H:Geef de implementatie (programmacode) van de methode bool isuitgeleend(string) const; van de klasse Bibliotheek. 10P I:Wanneer de klasse bibliotheek ook gebruikt gaat worden om laptops in op te slaan en uit te lenen, zal de klasse Bibliotheek voor algemeen gebruik gemaakt moeten worden. Verander de klasse Bibliotheek zodanig, zodat deze in het algemeen gebruikt kan worden om objecten van andere klasse dan Boek in op te slaan en geef de code in een voorbeeld hoe de gepaste Bibliotheek aangemaakt wordt. 1

Opgave 2 Gegeven het onderstaande klassendiagram. En de volgende code: int main(int argc, char *argv[]) Bidon flesje(750.0); //er wordt een Bidon aangemaakt met een inhoud van 750s flesje.vul(); Fiets f; f.plaatsbidon(&flesje); Fiets f2(f); f.verwijderbidon(); A: Geef de implementatie (programmacode) van de constructor van de klasse Bidon. B: Kan bij de klasse Bidon volstaan worden met de default destructor? Zo ja, verklaar je antwoord. Zo nee geef de implementatie. C: Bij het statement Fiets f2(f); wordt de fiets gekopieerd, kan hier volstaan worden met de default copy constructror? Zo ja, verklaar je antwoord. Zo nee geef de implementatie. D:Bij het statements Fiets f3; f3=f; krijgt fiets f3 dezelfde waarde als fiets f. Kan hier volstaan worden met de default assignment operator? Zo ja, verklaar je antwoord. Zo nee geef de implementatie.

E: De main wordt uitgebreid met het bovenstaande sequencediagram. Geef de implementatie van de methode maakbidon() van Fiets 10p