1. Homepage
  2. Programming
  3. SEHH2042 Computer Programming Group Project - Gift Redemption System

SEHH2042 Computer Programming Group Project - Gift Redemption System

Engage in a Conversation
HK PolyUSEHH2042Computer ProgrammingGift Redemption SystemC++

SEHH2042 Computer Programming Group Project – Gift Redemption System (Due: 23:59, 28 Apr 2024, Sunday) CourseNana.COM

Expected Learning Outcomes CourseNana.COM

  •   develop computer programs in one or more high level language programming environment; CourseNana.COM

  •   design and develop structured and documented computer programs; CourseNana.COM

  •   explain the fundamentals of object-oriented programming and apply it in computer program CourseNana.COM

    development; CourseNana.COM

  •   integrate the computer programming techniques to solve practical problems. CourseNana.COM

    Introduction CourseNana.COM

    In this assignment, you are going to develop a “Gift Redemption System” that runs in the command line environment. The system maintains the records of customers and gifts which are available for redemption by customers using the shopping points called CC points. The system allows customers to make queries on the available gifts for redemption and check the CC points balance after using CC points on gift redemption. CourseNana.COM

    Tasks CourseNana.COM

  •   Each group is required to write a Win32 Console Application program called GRS.cpp. CourseNana.COM

  •   Each student is required to submit a video recording (at most 2-minute long) to demonstrate CourseNana.COM

    his/her individual contribution in the group project. CourseNana.COM

  •   Each student is required to submit a Peer-to-Peer evaluation form (through the given Word file) CourseNana.COM

    via Blackboard. CourseNana.COM

    Program Requirements CourseNana.COM

R0 When the program starts, the console should display a welcome message, followed by the Main Menu of the program. Users can enter the options of the corresponding actions (see R1 to R6 below). CourseNana.COM

     Welcome Message designed by your group
     *** Main Menu ***
     [1] Load Starting Data
     [2] Show Records
     [3] Edit Customers
     [4] Enter Customer View

SEHH2042 23-24 Semester Two – Group Project 1 CourseNana.COM

     [5] Show Transaction History
     [6] Credits and Exit
     *****************
     Option (1 - 6):

R1 [1] Load Starting Data CourseNana.COM

When the user inputs 1 in the Main Menu, the system is loaded with starting data. The starting data includes records of (1) gifts, and (2) customers as shown in R1.1 below. After the starting data is loaded, the system returns to the Main Menu. CourseNana.COM

R1.1 The starting data to be loaded, together with the required data format of the data fields, are described below. CourseNana.COM

Gift records CourseNana.COM

Gift ID CourseNana.COM

A01 A02 A03 B01 B02 B03 B04 B05 C01 C02 C03 C04 D01 D02 D03 CourseNana.COM

Gift Description CourseNana.COM

LG Internet TV
Pioneer Hifi Set
Sony DVD Player
Healthy Air Fryer
Tefal Microwave Oven Famous Coffee Maker
Smart Rice Cooker
TechCook Toaster Oven Wellcome $50 Coupon Mannings $50 Coupon
Carol Restaurant $100 Coupon Shell $200 Coupon
CourseNana.COM

Clever Headset
HP Optic Mouse
Stylish Bluetooth Speaker
CourseNana.COM

Price (HKD) CourseNana.COM

3900
2400
400
1500
480
1800
600
450
50
50
100
200
350
250
800

Points Required CourseNana.COM

19000
11500
2000
7300
2400
8800
2900
2250
250
250
500
960
1750
1250
3900

Data format of each field:
Gift ID: A string starting with a letter and then CourseNana.COM

the gift category: CourseNana.COM

Starting letter in Gift ID CourseNana.COM

A B C D CourseNana.COM

two digits. The starting letter represents CourseNana.COM

Audio & Video Kitchenware
Coupons
Computer Accessories
CourseNana.COM

Gift Category CourseNana.COM

SEHH2042 23-24 Semester Two – Group Project CourseNana.COM

  •   Gift Description: A string that may contain white space (assume at most 100 characters long) CourseNana.COM

  •   Price: An integer, the price of the gift CourseNana.COM

  •   Points Required: An integer, the CC points required to redeem the gift CourseNana.COM

Customer records CourseNana.COM

Customer ID Rank CourseNana.COM

Tommy2015 B DavidChan B Luna123 B TigerMan B Max5678 S Neo2000 S CCTang S EchoWong G Rubychow G CourseNana.COM

Points Balance CourseNana.COM

8500
22800
650
14000
2580
8000
33554
8650
28000

Ivy2023 CourseNana.COM

G 12340 CourseNana.COM

Data format of each field: CourseNana.COM

  •   Customer ID: A string that uniquely identifies a customer in the system (assume at CourseNana.COM

    most 50 characters long); it is case-sensitive. You can assume it does not contain white CourseNana.COM

    space. CourseNana.COM

  •   Rank: A character (G, S or B) to represent the rank of the customer; there are different CourseNana.COM

    redemption discount policies for customers under different ranks, see requirement R7. Customers are ranked according to the length of time they become the member: CourseNana.COM

Rank (character) CourseNana.COM

G S CourseNana.COM

B CourseNana.COM

CourseNana.COM

  1. R1.2  Options 2 to 5 in the Main Menu are enabled only after the system is loaded with the starting data. If the user enters options 2 to 5 before starting data is loaded, an error message should be shown, and then the system returns to the Main Menu. CourseNana.COM

  2. R1.3  After the system is loaded with the starting data, the gift records data CANNOT be updated by any operations. However, the customer records data can be edited under options 3 or 4 in the Main Menu. See the requirements that follow. CourseNana.COM

Rank (description) CourseNana.COM

Gold Silver CourseNana.COM

Become member for ... CourseNana.COM

More than or equal to 1 year Less than 1 year but more than or equal to 6 months
Less than 6 months
CourseNana.COM

Bronze
Points Balance: The CC points balance owned by the customer CourseNana.COM

SEHH2042 23-24 Semester Two – Group Project 3 CourseNana.COM

  1. R2  [2] Show Records CourseNana.COM

    [After the starting data is loaded] When the user inputs 2 in the Main Menu, the system displays all the fields of all gift records, and then all the fields of all customer records. Tabular format should be displayed, and the records are sorted in alphabetical order based on the ID values. Data shown should be the latest set of data since the starting data is loaded (updates on the customer records resulted by the operations under options 3 or 4 in the Main Menu should be included). After showing the records, the system returns to the Main Menu. CourseNana.COM

  2. R3  [3] Edit Customers CourseNana.COM

    [After the starting data is loaded] When the user inputs 3 in the Main Menu, the system prompts for the next user input of a customer ID. If such customer ID does not exist in the system, it is an add customer operation. Otherwise, it is a delete customer operation. CourseNana.COM

    Add customer CourseNana.COM

    The system further asks the user to input two pieces of information: (1) the date that the customer became a member (in the format DD/MM/YYYY), followed by (2) the points balance value for the newly added customer. The system determines which rank (G/S/B) the customer belongs to by comparing the current date (i.e., the date that the program is run) and the date entered by the user. After getting all user inputs, the new customer should be added into the system. For any invalid inputs (e.g., wrong date format/ values, a future date is entered, incorrect range of points values, etc.), the system allows TWO more retries. With more than THREE times of invalid inputs, the system prints an appropriate error message and returns to the Main Menu. CourseNana.COM

    Delete customer CourseNana.COM

    The system displays the information of the customer (including all the fields), and prompts for user’s “Yes/No” confirmation on the delete operation. The customer record is deleted from the system if it is confirmed. CourseNana.COM

    A message showing the summary of the above operation is then displayed, and the system returns to the Main Menu. CourseNana.COM

  3. R4  [4] Enter Customer View CourseNana.COM

    [After the starting data is loaded] When the user inputs 4 in the Main Menu, the system prompts for the next user input of a customer ID. If such customer ID does not exist in the system, the system displays an error message and returns to the Main Menu. Otherwise, it CourseNana.COM

SEHH2042 23-24 Semester Two – Group Project 4 CourseNana.COM

displays the Customer View Menu as shown below, and allows further processing on the particular customer (e.g., DavidChan) as follows (see R4.1 to R4.3 below). CourseNana.COM

     Action for Customer ID: DavidChan
     ***** Customer View Menu *****
     [1] Earn CC Points
     [2] Redeem Gifts
     [3] Modify CC Points Balance
     [4] Return to Main Menu
     **************************
     Option (1 - 4):
  1. R4.1  [1] Earn CC Points CourseNana.COM

    When such option is chosen, the system prompts for user input of a floating point value, which is the amount of money spent for converting to CC points. The system then calculates and adds the CC points into the Points Balance for the customer according to the “Points Conversion Rule” (see R7). CourseNana.COM

  2. R4.2  [2] Redeem Gifts CourseNana.COM

    When such option is chosen, the system displays all the gifts under one of the Gift Categories according to the user input choice of gift category. Fields about the gift records should be displayed, including the Gift ID, Gift Description, Price, Required Points—the actual required points for the customer, which could be a discounted value according to the customer rank, see R7. Gift records are sorted by the Required Points, from the smallest to the largest. The display should also identify those gifts that the customer can redeem by only using his available CC points without paying extra money. CourseNana.COM

    The system then allows the user to enter the Gift ID of the gift that he wants to redeem, followed by the amount of CC points used for redemption. For any invalid inputs (e.g., wrong Gift ID, out-of-range CC points for the redemption, etc.), the system allows TWO more retries. With more than THREE times of invalid inputs, the system prints an appropriate error message and returns to the Customer View Menu. CourseNana.COM

    The user can redeem a gift with “less-than-required” CC points through paying extra money in the redemption transaction (see R7 about the “Points Conversion Rule”). As a result, the user can still redeem a gift if his available CC points is less than the required one for the gift. CourseNana.COM

SEHH2042 23-24 Semester Two – Group Project 5 CourseNana.COM

After getting all user inputs, the system displays the extra money needed in the redemption transaction and asks for the user’s confirmation. Upon user’s confirmation, the system subtracts the correct amount of CC points from the Points Balance for the customer. CourseNana.COM

  1. R4.3  [3] Modify CC Points Balance CourseNana.COM

    When such option is chosen, the system displays the current CC Points Balance of the customer, and asks for user input of a new CC Points Balance value. The system then updates the CC Point Balance for the customer. CourseNana.COM

  2. R4.4  [4] Return to Main Menu CourseNana.COM

    When such option is chosen, the system returns to the Main Menu. CourseNana.COM

  3. R4.5  Stay at the Customer View Menu CourseNana.COM

    Following R4.1, R4.2 and R4.3, after an operation on the CC Points Balance of the customer, the system should display the change in the CC Points Balance of the customer by that operation, and then stays at the Customer View Menu. CourseNana.COM

R5 [5] Show Transaction History CourseNana.COM

[After the starting data is loaded] When the user inputs 5 in the Main Menu, the system prompts for the next user input of a customer ID. If such customer ID does not exist in the system, the system displays an error message and returns to the Main Menu. Otherwise, it displays all the CC Points transaction records history for that customer since the program starts running: CourseNana.COM

  •   All kinds of CC Points transactions (under R4) should be considered and displayed. CourseNana.COM

  •   The transaction records should be displayed in the order that they were carried out. CourseNana.COM

  •   For an “Add CC Points” transaction, the amount of money spent for earning CC points, CourseNana.COM

    and the change in the CC Points Balance, should be displayed. CourseNana.COM

  •   For a “Redeem Gifts” transaction, the gift that is redeemed (its gift ID and gift CourseNana.COM

    description), the change in the CC Points Balance, and the extra money needed to pay CourseNana.COM

    (if any) in the redemption transaction, should be displayed. CourseNana.COM

  •   For a “Modify CC Points Balance” transaction, the type (increase or decrease) and CourseNana.COM

    change in the CC Points Balance, should be displayed. CourseNana.COM

  •   At the end, a summary showing the original CC Points Balance, the final CC Points CourseNana.COM

    Balance, the change in CC Points Balance, and the TOTAL amount of extra money the customer needs to pay as a result of all redemption transactions should be displayed. CourseNana.COM

SEHH2042 23-24 Semester Two – Group Project 6 CourseNana.COM

A meaningful message should be shown if there have been no transactions made so far for the customer. CourseNana.COM

After displaying the transaction history, the system returns to the Main Menu, CourseNana.COM

  1. R6  [6] Credits and Exit CourseNana.COM

    When the user inputs this option, the system prompts for user’s confirmation. If the user inputs ‘n’ or ‘N’, the system returns to the Main Menu. If the user inputs ‘y’ or ‘Y’, the system displays the personal particulars (student name, student ID, tutorial group) of the group members and terminates. Other input is not acceptable and the system should ask the user to confirm again. CourseNana.COM

  2. R7  Points Conversion Rule CourseNana.COM

    The CC points of a customer could be modified by user operations under R4. The change should be made according to the “Points Conversion Rule” below, which also takes the rank of the customer into consideration: CourseNana.COM

    •   A spending of $250 can earn 1 CC point. No CC point can be earned by the remaining spending less than $250. CourseNana.COM

    •   Conversion rate during gift redemption: 1 CC point is worth $0.2. CourseNana.COM

    •   According to the rank of the customer, there is a discount on the CC points required for CourseNana.COM

      a gift in the gift redemption. The final points required is rounded to nearest integer: CourseNana.COM

Rank Discount CourseNana.COM

Gold 10% off Silver 5% off Bronze No discount CourseNana.COM

  •   The rank of the customer does not affect the price of a gift. CourseNana.COM

  •   During the redemption process, if the user redeems a gift using “less-than-required” CourseNana.COM

    CC points, the extra money needed is calculated by subtracting the money value of the CC points used in the redemption (calculated using the above conversation rate) from the price of the gift.
    For example, consider a customer who is going to use 1600 CC points to redeem gift D01:
    CourseNana.COM

    For a Gold customer: CourseNana.COM

    Extra money needed = $0
    (1575 CC points is required and to be deducted)
    CourseNana.COM

SEHH2042 23-24 Semester Two – Group Project 7 CourseNana.COM

For a Silver or a Bronze customer: CourseNana.COM

Extra money needed = $350 – $320 = $30 (Silver customer: 1663 CC points is required) (Bronze customer: 1750 CC points is required) CourseNana.COM

  1. R8  Suitable checking on user’s input is expected, except in situations with assumptions stated in the requirements above. Appropriate error messages should be printed whenever unexpected situation happens, e.g., input value out of range, incorrect date format, etc. CourseNana.COM

  2. R9  The use of functions (in addition to main function) and classes (i.e., OOP design) are expected in your program. Appropriate comments should be added in your source code file. CourseNana.COM

  3. R10  Creativity and Critical Thinking: Use suitable format to present all required information of gifts and customers clearly and neatly. Additional features can be added. CourseNana.COM

Tips CourseNana.COM

1. To handle unexpected input error (e.g. input a character to an integer variable), you may use CourseNana.COM

the following code appropriately in your program: CourseNana.COM

     cin.ignore();    // Discard the content in the input sequence.
     cin.clear();     // Reset the input error status to no error.

Video Requirements CourseNana.COM

This is an individual task under this group project. Each student needs to create a video recording which records either (1) your explanation on the working algorithms of the codes that you designed and wrote, or (2) the testing of project codes (those you wrote or the whole group’s work) using test case scenarios. See points below for the specific requirements of the video recording: CourseNana.COM

  •   Duration of video is at maximum 2 minutes long. Use MS Teams to record. CourseNana.COM

  •   The video recording is used to demonstrate your contribution in the group project. If your work done is too much to be all included in the 2-minute video, choose the most important/ CourseNana.COM

    representative work to record and explain. CourseNana.COM

  •   At the beginning, clearly mention the objective of your video: whether you are going to (1) CourseNana.COM

    explain the working algorithms of your codes, or (2) run and test your project codes. CourseNana.COM

  •   The video should include your voice recording (in English) as you give the presentation (either CourseNana.COM

    code explanation or the code testing). Your voice should be clear and loud enough. CourseNana.COM

  •   The video should show the computer screen as you give the presentation. Suitable cursor CourseNana.COM

    movement or text highlighting by mouse action should be present.
    SEHH2042 23-24 Semester Two – Group Project 8 CourseNana.COM

  •   In addition to your name shown by MS Teams, you should show your English name, Student ID and lecture group on the screen (e.g., put down the information using Notepad and display it). The video should keep showing it for identity verification. It is optional to show your face in the recording. CourseNana.COM

  •   Show the whole screen, not just part of the screen. While showing the source codes or code- testing results, make sure the text is clearly shown, large enough and visible. CourseNana.COM

Get in Touch with Our Experts

WeChat WeChat
Whatsapp WhatsApp
HK PolyU代写,SEHH2042代写,Computer Programming代写,Gift Redemption System代写,C++代写,HK PolyU代编,SEHH2042代编,Computer Programming代编,Gift Redemption System代编,C++代编,HK PolyU代考,SEHH2042代考,Computer Programming代考,Gift Redemption System代考,C++代考,HK PolyUhelp,SEHH2042help,Computer Programminghelp,Gift Redemption Systemhelp,C++help,HK PolyU作业代写,SEHH2042作业代写,Computer Programming作业代写,Gift Redemption System作业代写,C++作业代写,HK PolyU编程代写,SEHH2042编程代写,Computer Programming编程代写,Gift Redemption System编程代写,C++编程代写,HK PolyUprogramming help,SEHH2042programming help,Computer Programmingprogramming help,Gift Redemption Systemprogramming help,C++programming help,HK PolyUassignment help,SEHH2042assignment help,Computer Programmingassignment help,Gift Redemption Systemassignment help,C++assignment help,HK PolyUsolution,SEHH2042solution,Computer Programmingsolution,Gift Redemption Systemsolution,C++solution,