100% tevredenheidsgarantie Direct beschikbaar na betaling Zowel online als in PDF Je zit nergens aan vast
logo-home
COS2614 Assignment 1 2024 €5,41   In winkelwagen

Overig

COS2614 Assignment 1 2024

4 beoordelingen
 272 keer bekeken  40 keer verkocht
  • Vak
  • Instelling
  • Boek

Code solutions to both questions with a google drive link to download the complete project files for both questions. Guaranteed to get you 90% +. Please do not redistribute. As a bonus you can download the prescribed textbook from the link.

Voorbeeld 5 van de 12  pagina's

  • 13 mei 2024
  • 12
  • 2023/2024
  • Overig
  • Onbekend

4  beoordelingen

review-writer-avatar

Door: deniselouw7 • 6 maanden geleden

review-writer-avatar

Door: mphomothibedi • 6 maanden geleden

review-writer-avatar

Door: jeremylosper • 6 maanden geleden

review-writer-avatar

Door: ndinannyijusticemukwevho1 • 6 maanden geleden

avatar-seller
COS2614
Assignment 1
Semester 1 - 2024
Due Date: 17 May 2024




Disclaimer
These study notes are meant to aid your academic journey. They are not a substitute for
individual research or professional guidance, and their accuracy, while strived for, is not
guaranteed. You are responsible for verifying the information and maintaining academic
integrity by avoiding plagiarism and adhering to citation rules. The notes may not cover all
variations of a subject, so tailor your assignments to your specific academic environment.
The seller is not liable for any outcomes resulting from the use or misuse of these notes. By
using these notes, you agree to this disclaimer, which may be updated without notice.

,This document contains
1. Source code for both questions with screenshots

2. A Google drive link to download the project files





3. As a bonus you can download the prescribed textbook from the google
drive link






,Question 1 Preview:




What this project does:

1. Unique ID Generation: The program extracted the initials "NJ" from the first and last names,
"Nick" and "Johnson," respectively. It then counted the total number of characters in the full
name (excluding spaces), which was 16 characters. The count was padded with leading zeros
to make it 4 digits, resulting in "0016." Thus, the unique ID generated was "NJ0016."



2. Initial Key Generation: For the initial key, the program randomly selected 6 characters from
the full name "Nick Johnson." It ensured that at least one character was a vowel and one was
a consonant. The selected characters were "inhkis," resulting in the initial key "inhkis."



3. Output Display: The program displayed the generated unique ID ("NJ0016") and the initial
key ("ihnkisnoicnm") using a QMessageBox, providing a visual representation of the results
to the user.



4. User Interaction: The user interacted with the program by inputting their full name ("Nick
Johnson") through a QInputDialog. The program processed this input to generate the unique
ID and initial key, demonstrating the application's adherence to the specified rules for ID and
key generation.

,Question 2 Preview:




1. User Input: The program prompts the user to input the number of items (2) and details for
each item, including ID, name, and price. Additionally, it requests details for the vendor, such
as Vendor ID, Name, and Address.



2. Item Initialization: Using the input data, the program initializes two StoreItem objects with
the specified IDs, names, and prices: "Laptop" (ID: 101, Price: $999.99) and "Smartphone"
(ID: 102, Price: $499.99).



3. Vendor Setup: The program creates a Vendor object with the provided details: Vendor ID:
201, Name: "ABC Electronics", Address: "123 Main Street."



4. Output Display: It then displays the details of each item, first without vendor information
and then with vendor details. Finally, it demonstrates the use of the getVendorName()
method to output the vendor name for each StoreItem.

, Question 1 Source code :

// Include necessary header files
#include <QApplication>
#include <QInputDialog>
#include <QMessageBox>
#include <QString>
#include <QStringList>
#include <cstdlib>
#include <ctime>

// Function to generate a unique ID based on the full name
QString generateUniqueID(const QString& fullName) {
// Split the full name into individual parts
QStringList nameParts = fullName.split(" ");
QString initials;
// Construct initials from the first characters of the name parts
if (nameParts.size() >= 2) {
initials += fullName.at(0).toUpper(); // First name initial
QString lastWord = nameParts.back();
if (nameParts.size() > 2)
initials += nameParts[1].at(0).toUpper(); // Middle name
initial
else
initials += lastWord.at(0).toUpper(); // Last name initial if
no middle name
}

// Remove spaces from the full name and count the number of
characters
QString nameWithoutSpaces = fullName;
nameWithoutSpaces.replace(" ", "");
QString countString = QString::number(nameWithoutSpaces.length());
// Pad the count with leading zeros to make it 4 digits
countString = countString.rightJustified(4, '0');

// Combine initials and count to form the unique ID
return initials + countString;
}

// Function to generate an initial key based on the full name
QString generateInitialKey(const QString& fullName) {
QString key;
// Remove spaces from the full name and convert to lowercase
QString nameWithoutSpaces = fullName;
nameWithoutSpaces.replace(" ", "");
QString name = nameWithoutSpaces.toLower();

// Select at least one vowel and one consonant from the name
QChar vowel = QChar::Null;
QChar consonant = QChar::Null;
for (int i = 0; i < name.length(); ++i) {
if (name[i].isLetter()) {
if (name[i] == 'a' || name[i] == 'e' || name[i] == 'i' ||
name[i] == 'o' || name[i] == 'u') {
if (vowel.isNull())
vowel = name[i];
} else {
if (consonant.isNull())

Voordelen van het kopen van samenvattingen bij Stuvia op een rij:

Verzekerd van kwaliteit door reviews

Verzekerd van kwaliteit door reviews

Stuvia-klanten hebben meer dan 700.000 samenvattingen beoordeeld. Zo weet je zeker dat je de beste documenten koopt!

Snel en makkelijk kopen

Snel en makkelijk kopen

Je betaalt supersnel en eenmalig met iDeal, creditcard of Stuvia-tegoed voor de samenvatting. Zonder lidmaatschap.

Focus op de essentie

Focus op de essentie

Samenvattingen worden geschreven voor en door anderen. Daarom zijn de samenvattingen altijd betrouwbaar en actueel. Zo kom je snel tot de kern!

Veelgestelde vragen

Wat krijg ik als ik dit document koop?

Je krijgt een PDF, die direct beschikbaar is na je aankoop. Het gekochte document is altijd, overal en oneindig toegankelijk via je profiel.

Tevredenheidsgarantie: hoe werkt dat?

Onze tevredenheidsgarantie zorgt ervoor dat je altijd een studiedocument vindt dat goed bij je past. Je vult een formulier in en onze klantenservice regelt de rest.

Van wie koop ik deze samenvatting?

Stuvia is een marktplaats, je koop dit document dus niet van ons, maar van verkoper UnisaGuides. Stuvia faciliteert de betaling aan de verkoper.

Zit ik meteen vast aan een abonnement?

Nee, je koopt alleen deze samenvatting voor €5,41. Je zit daarna nergens aan vast.

Is Stuvia te vertrouwen?

4,6 sterren op Google & Trustpilot (+1000 reviews)

Afgelopen 30 dagen zijn er 72042 samenvattingen verkocht

Opgericht in 2010, al 14 jaar dé plek om samenvattingen te kopen

Start met verkopen
€5,41  40x  verkocht
  • (4)
  Kopen