Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Code in C++, if it is too long, answer Q5 only please, but I guess you need to answer Q1,2,3,4 first to be able to

image text in transcribed

image text in transcribed

image text in transcribed

Code in C++, if it is too long, answer Q5 only please, but I guess you need to answer Q1,2,3,4 first to be able to finalize Q5.

Thank you.

Q1. Class Reference (10 marks) Implement a class, called Reference, to represent the characteristics that are common to all the References. Namely, 1. All references must have a unique identifier (of type int). 2. All references have a title and author (both of type string or char*), as well as year of publication (of type int); Q2. Class Article (10 marks) Article is a specialized Reference that also has information about the journal where the article is published, start page, and end page. More precisely, 1. An Article is a derived class of Reference 2. It also stores information about the journal (type string or char*), and the startPage and endPage (both of type int); 3. It implements the additional member function int getNumberOfPages(), which returns the total number of pages (computed using starPage and endPage); Q3. Class Book (10 marks) Book is also a specialized Reference that has information about the publisher of this reference. It also has number of pages as one of its attributes. 1. Book is a derived class of Reference 2. It stores the publisher (type string or char*) of this reference and the number of pages of this book (type int); 3. It also implements the member functions getNumberOfPages(), which returns the number of pages of this reference. In the case of Book reference, the number of pages is a single number, therefore, the member function simply returns this number; 4. It also implements functions related to the publisher. Q4. Class Textbook (10 marks) TextBook is a specialized Book. A textbook has an additional attribute, Web URL (Uniform Resource Locator), where students can find additional material such as slides, exercises, etc. 1. TextBook is a derived class of Book 2. It implements additional functions related to the setting and getting the URL Q5. Reference Manager (30 marks) Create a class called Reference Manager that will be used as a container to hold objects of classes Article, Book, and TextBook. 1. Reference Manager has a fixed capacity. It uses a fixed size array to store References. 2. The first reference added to the container will be added at position zero, the second one at position 1, and so on. A reference is always added at the next available position; 3. A Reference Manager has one regular constructor: Reference Manager(int capacity). The constructor must create an array of size capacity, which will be used to store References. It will also initialize the instance variables that your implementation requires. 4. Reference Manager will have size data member, which will track the number of references in the array. 5. bool add(Reference & reference): adds a reference at the next available position and returns true, or returns false if the reference manager is full. 6. int get(int pos): returns the identifier of the Reference object stored at position pos of the Reference Manager. You can assume that pos is a valid index, i.e. O

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Students also viewed these Databases questions