Great Deal! Get Instant $10 FREE in Account on First Order + 10% Cashback on Every Order Order Now

COMP 2152 – Assignment 1 – Winter 2022 Important: ● This is an individual assignment (complete the requirements on your own). ● Do not share the assignment requirements with any former or future...

1 answer below »

COMP 2152 – Assignment 1 – Winter 2022
Important:
● This is an individual assignment (complete the requirements on your own).
● Do not share the assignment requirements with any former or future students in COMP 2152. Do not
share this assignment requirements online in any format, anywhere.
● You may choose to complete all requirements or attempt to complete as much as possible.
● Credit will be awarded for requirements completed co
ectly and entirely with the portion of the
program functioning as requested. No partial marks will be awarded.
● You are allowed to make assumptions about application functionality not mentioned in the project idea
(which is more of a general guideline).
● At a minimum your project must display the functionality described for the idea selected. Any
functionality described that is not a part of your submission will result in grade penalties at the
discretion of the instructor.
Submission:
- Submit Python files only. No other format is accepted.
- DO NOT submit zipped (compressed) files. Any compressed files will not be marked.
- Please make sure that as a comment you will type on top of your code the name of your Lab
Professor.
e.g. #Lab Professor: Mr. Hesam Akbari OR #Lab Professor: Ms. Laily Ajellu
- Submit on Blackboard.
Please develop a Python application that meets the requirements described below:
Project Description:
Scenario:
Write a program for a retail store that will allow them to calculate discounts for their employees
when they buy items.
Discounts are based on the number of years worked (2% for each year, maximum 10%) as well
as if the employee is a manager (10% more discount on top of the worked year discount) or
hourly employee (2% discount). They are also allowed no discount once they have received $200
discount.
The program starts asking for the employee discount number to start purchasing. The employee
can purchase 1 item at a time. Do this until the user answers “NO” for “Another purchase?”.
Once all employees have been processed, display the All-Employee Summary and give the users
option to go back to Menu or Exit the program.
A workflow diagram is provided for each function to help students visualize the flow through the
program.
Actions:
1. Menu Pages:
Create the menus below using a square created in the console by printing dashes (-) and pipes
(|) where appropriate. It should look something like this but large enough to cover almost ½ of
your computer screen when printed on the console (no need to calculate for the monitor size-
just approximate is fine):
————
| |
————
e.g.
———————————————
| 1- Create Employee |
| 2- Create Item |
| 3- Make Purchase |
| 4-All Employee Summary |
| 5-Exit |
———————————————
2. Specific Menu Pages to Create:
2.1. Create Employee Page
a. Please define a function that asks the user to get the employees’ information and add that to
the list. Whenever the user enters “NO” it will finish getting the employees’ information.
. Use a 2-dimensional list to create and save the employee information where each item in the
list consists of the information of 1 employee:
[Employee ID, Employee Name, Employee Type, Years Worked, Total Purchased, Total
Discounts, Employee Discount Number]
E.g.
employee_list = [
[1001, John Alber, hourly, 8, 0, 0, 22737],
[1002, Sarah Rose, manager, 12, 0, 0, 22344],
[1003, Alex Folen, manager, 5, 0, 0, 22957],
[1004, Pola Sahari, hourly, 17, 0, 0, 22488]
]
c. Inputs must be validated to satisfy the following requirements:
• Employee ID is unique within the list
• Employee Discount is unique within the list
• Null/empty value is not allowed for any of the fields
• Input must be number for Employee ID, Years Worked, and Employee Discount Number
• Input must be “hourly” or “manager” for Employee Type
• Input is not required for Total Purchased and Total Discounts when the employee is first
created in the system, these fields should be assigned with a default value of 0.
Below is the workflow diagram for the Create Employee Process, the check for null values is not
included to simplify the diagram. Please make sure to implement all the checks as per
equirements.
2.2. Create Item Page
a. Please define a function that asks the user to get the items’ information and add that to the
list. Whenever the user enters “NO” it will finish getting the items’ information.
. Use a 2-dimensional list to create and save the item information where each item in the list
consists of similar information as follows:
[Item Number, Item Name, Item Cost]
E.g.
item_list = [
[11526, Nike shoes, 120],
[11849, Trampoline,180],
[11966, Mercury Bicycle, 150],
[11334, Necklace Set, 80]
]
c. Inputs must be validated to satisfy the following requirements:
• Item Number is unique within the list
• Null/empty value is not allowed for any of the fields
• Input must be number for Item Number and Item Cost
Below is the workflow diagram for the Create Item Process, the check for null values is not
included to simplify the diagram. Please make sure to implement all the checks as per
equirements.
2.3 Make a Purchase Page
This page will list all the items available for sales. For each item, display Item Number, Item
Name, Item Cost. Please choose one of the following formats to display the Item list.
Option 1: Print with format
Item Number | Item Name | Item Cost
11526 | Nike shoes | $120.00
11849 | Trampoline | $180.00
11966 | Mercury Bicycle | $150.00
11334 | Necklace Set | $80.00
Option 2: Simple print
Item Number, Item Name, Item Cost
11526, Nike shoes, $120.00
11849, Trampoline, $180.00
11966, Mercury Bicycle, $150.00
11334, Necklace Set, $80.00
The page then prompts for user inputs such as item number and employee discount number to
make the purchase. Do this until the user answers “NO” for “Another purchase?”. Once all
employees have been processed, display the All-Employee Summary Page and give the users
option to go back to Menu or Exit the program. Following the flowchart diagram below for the
purchasing process.
Discounts are based on the number of years worked (2% for each year, maximum 10%) as well
as if the employee is a manager (10% more discount on top of the worked year discount) or
hourly employee (2% discount). They are also allowed no discount once they have received $200
discount.
2.4. All Employee Summary Page
This page will list all the employees of the company. For each employee, display Employee ID,
Employee Name, Employee Type, Years Worked, Total Purchased, Employee Discount Number.
Please choose one of the following formats to display the Employee list.
Option 1: Print with format
Employee ID | Employee Name | Employee Type | Years Worked | Total Purchased | Total Discount | Employee Discount Number
1001 | John Alber | hourly | 8 |$ 90.00 | $10 | 22737
1002 | Sarah Rose | manager | 12 |$ 40.00 | $10 | 22344
Option 2: Simple print
Employee ID, Employee Name, Employee Type, Years Worked, Total Purchased, Total Discounts, Employee Discount Number
1001, John Alber, hourly, 8, 90, 10, 22737
1002, Sarah Rose, manager, 12,40, 10, 22344
This page displays the All-Employee Summary Page and gives the users option to go back to
Menu or Exit the program. Following the flowchart diagram below for the process.
Answered Same Day Mar 05, 2022

Solution

Anubhav answered on Mar 06 2022
101 Votes
SOLUTION.PDF

Answer To This Question Is Available To Download

Related Questions & Answers

More Questions »

Submit New Assignment

Copy and Paste Your Assignment Here