Written by students who passed Immediately available after payment Read online or as PDF Wrong document? Swap it for free 4,6 TrustPilot
logo-home
Document preview thumbnail
Preview 3 out of 22 pages
Exam (elaborations)

COS3711 Assignment 3 2024 - DUE 9 September 2024

Document preview thumbnail
Preview 3 out of 22 pages

COS3711 Assignment 3 2024 - DUE 9 September 2024 QUESTIONS AND ANSWERS

Content preview

COS3711 Assignment
3 2024 - DUE 9
September 2024
QUESTIONS WITH COMPLETE ANSWERS




[School]
[Course title]

,COS3711 Assignment 3 2024 - DUE 9 September 2024

Question 1

Write an application that can be used to process Staff member details. The
fields that should be stored include:

• A name,

• A birthdate, and

• A staff appointment type (one of permanent, part-time, or contract, stored as
an enum). Note that the getter and setter for this data member may be done
using a QString. Downloaded by Corona Virus () lOMoARcPSD| The
application should allow a user to enter details via GUI. Also, once a staff
member’s details are entered, they should be written to file (in any acceptable
format) and stored in a container in the application. Ensure that you adhere
to basic design principles, and avoid any anti-patterns in the design of your
solution.

To create an application that processes staff member details, you can use a combination of C++
and Qt for the GUI. This example will include classes to handle the staff details, enums for
appointment types, and methods for saving to a file and storing the data in a container. Here is a
high-level overview and code for this application:


1. Setting Up the Environment

Ensure you have Qt installed on your system. You can download it from the Qt website.


2. Defining the Staff Class

First, define a class to hold the staff member details:

, cpp
Copy code
#include <QString>
#include <QDate>


enum class AppointmentType {
Permanent,
PartTime,
Contract
};


class Staff {
private:
QString name;
QDate birthdate;
AppointmentType appointmentType;


public:
Staff() = default;
Staff(const QString& name, const QDate& birthdate, AppointmentType type)
: name(name), birthdate(birthdate), appointmentType(type) {}


QString getName() const { return name; }
void setName(const QString& name) { this->name = name; }


QDate getBirthdate() const { return birthdate; }
void setBirthdate(const QDate& birthdate) { this->birthdate = birthdate;
}


QString getAppointmentType() const {
switch (appointmentType) {
case AppointmentType::Permanent: return "Permanent";
case AppointmentType::PartTime: return "PartTime";
case AppointmentType::Contract: return "Contract";
}
return "";
}

Document information

Uploaded on
June 28, 2024
Number of pages
22
Written in
2023/2024
Type
Exam (elaborations)
Contains
Questions & answers
R41,12

Wrong document? Swap it for free Within 14 days of purchase and before downloading, you can choose a different document. You can simply spend the amount again.
Written by students who passed
Immediately available after payment
Read online or as PDF

Seller avatar
Reputation scores are based on the amount of documents a seller has sold for a fee and the reviews they have received for those documents. There are three levels: Bronze, Silver and Gold. The better the reputation, the more your can rely on the quality of the sellers work.
msmartie11
3,9
(30)
Sold
246
Followers
224
Items
1232
Last sold
10 months ago



Why students choose Stuvia

Created by fellow students, verified by reviews

Quality you can trust: written by students who passed their exams and reviewed by others who've used these notes.

Didn't get what you expected? Choose another document

No worries! You can immediately select a different document that better matches what you need.

Pay how you prefer, start learning right away

No subscription, no commitments. Pay the way you're used to via credit card or EFT and download your PDF document instantly.

Student with book image

“Bought, downloaded, and aced it. It really can be that simple.”

Alisha Student

Working on your references?

Create accurate citations in APA, MLA and Harvard with our free citation generator.

Working on your references?

Frequently asked questions