100% satisfaction guarantee Immediately available after payment Both online and in PDF No strings attached
logo-home
COS3711 Assignment 2 (COMPLETE ANSWERS) 2024 - DUE 18 July 2024 R48,52   Add to cart

Exam (elaborations)

COS3711 Assignment 2 (COMPLETE ANSWERS) 2024 - DUE 18 July 2024

 10 views  0 purchase

Exam study book Advanced Programming Methodologies of Gianna Cioni, Andrzej Salwicki - ISBN: 9781483265452 (Guaranteed Success)

Preview 4 out of 34  pages

  • July 16, 2024
  • 34
  • 2023/2024
  • Exam (elaborations)
  • Questions & answers
book image

Book Title:

Author(s):

  • Edition:
  • ISBN:
  • Edition:
All documents for this subject (50)
avatar-seller
edwardsokengo
COS3711 Assignment 2 (COMPLETE ANSWERS) 2024 - DUE 18 July 2024

Question 1

Study the following UML class diagram: The UML class diagram is an initial

design of classes for a conference registration application. There are three

types of registration allowed for the conference: standard registration, student

registration and invited guests registration. The standard registration fee is the

standard fee (stored in STANDARD_FEE). For those registered as students,

the conference fee is half the price of the standard registration fee. For those

registered as guests, the conference fee is 10% of the standard registration

fee. An instance of RegistrationList contains a list of Registration*. No two

registrations are allowed to have attendees with the same e-mail addresses,

unless the names are different. You should be able to query a RegistrationList

whether a person (by the name) is already registered for the conference. A

RegistrationList can also return the number of attendees that are registered

for the conference from an institution. Similarly, you can request the total

registration fees for a type (“Registration”, “StudentRegistration”,

“GuestRegistration” or “All”) of registration. You are expected to use Qt’s

metaobject system to access the type of a Registration in RegistrationList.

Downloaded by Corona Virus () lOMoARcPSD| Write a GUI application that

allows users to register for a conference. The GUI should display the current

list of registrations, including the respective registration fees, in the


For assistance whatsapp +254702715801

,RegistrationList at all times, using a table widget. The interface should also

allow users to request and view the results of the various operations

supported by the RegistrationList class. You are allowed to add new features

to the classes given in the UML diagram, although you are not allowed to

delete or change the given functions. You can decide on the design of the

GUI, and it can be done manually or using Qt Designer. You are expected to

follow good programming principles.

### Step 1: Define the Classes and Inheritance



Based on the UML diagram description, you will have the following classes:



1. **Registration** (base class)

2. **StandardRegistration** (inherits from Registration)

3. **StudentRegistration** (inherits from Registration)

4. **GuestRegistration** (inherits from Registration)

5. **RegistrationList** (manages a list of registrations)



Each class will have attributes and methods corresponding to the

requirements.



### Step 2: Implement the Classes


For assistance whatsapp +254702715801

,#### Registration Class

```cpp

class Registration {

public:

Registration(const QString &name, const QString &email);

virtual ~Registration() = default;

QString getName() const;

QString getEmail() const;

virtual double getFee() const = 0; // Pure virtual function

protected:

QString name;

QString email;

};



Registration::Registration(const QString &name, const QString &email) :

name(name), email(email) {}



QString Registration::getName() const { return name; }

QString Registration::getEmail() const { return email; }

```


For assistance whatsapp +254702715801

, #### StandardRegistration Class

```cpp

class StandardRegistration : public Registration {

public:

StandardRegistration(const QString &name, const QString &email);

double getFee() const override;

private:

static constexpr double STANDARD_FEE = 100.0; // Example fee

};



StandardRegistration::StandardRegistration(const QString &name, const

QString &email) : Registration(name, email) {}



double StandardRegistration::getFee() const {

return STANDARD_FEE;

}

```



#### StudentRegistration Class

```cpp


For assistance whatsapp +254702715801

The benefits of buying summaries with Stuvia:

Guaranteed quality through customer reviews

Guaranteed quality through customer reviews

Stuvia customers have reviewed more than 700,000 summaries. This how you know that you are buying the best documents.

Quick and easy check-out

Quick and easy check-out

You can quickly pay through EFT, credit card or Stuvia-credit for the summaries. There is no membership needed.

Focus on what matters

Focus on what matters

Your fellow students write the study notes themselves, which is why the documents are always reliable and up-to-date. This ensures you quickly get to the core!

Frequently asked questions

What do I get when I buy this document?

You get a PDF, available immediately after your purchase. The purchased document is accessible anytime, anywhere and indefinitely through your profile.

Satisfaction guarantee: how does it work?

Our satisfaction guarantee ensures that you always find a study document that suits you well. You fill out a form, and our customer service team takes care of the rest.

Who am I buying this summary from?

Stuvia is a marketplace, so you are not buying this document from us, but from seller edwardsokengo. Stuvia facilitates payment to the seller.

Will I be stuck with a subscription?

No, you only buy this summary for R48,52. You're not tied to anything after your purchase.

Can Stuvia be trusted?

4.6 stars on Google & Trustpilot (+1000 reviews)

73918 documents were sold in the last 30 days

Founded in 2010, the go-to place to buy summaries for 14 years now

Start selling
R48,52
  • (0)
  Buy now