Reference no: EM132124456
Respectfully, Please see the structure for the program I'm trying to write using Python.
Below is how the program should be structured.
1. Program general structure: Function definitions should be at the top of the program Create a dictionary that will be used to store customer information Have an infinite while loop:
1. Within the while loop, user should be prompted for the service information: Name, Income, consulting time -- If the user does not enter a value exit the loop
2. Pass the service information to the generateRecord Function
3. Within the generateRecord function
a. Generate the customer id and store it in a variable
b. Call the generateBillAmount Function
1. Pass the income and consulting time
2. Based on the income, determine billing and return bill amount
c. Store the billing amount returned by generateBillAmount into a variable
d. Store the customer information into a tuple: name, income, consulting time, billingAmount
e. Add the customer id and record into the dictionary -- key/value pair Once the loop exits, print the contents of the dictionary
Please see the actual problem below:
2. During the tax season, every Friday, the J&J accounting firm provides assistance to people who prepare their own tax returns. Their charges are as follows:
a. If a person has low income (<= 25,000) and the consulting time is less than or equal to 30 minutes, there are no charges; otherwise, the service charges are 40% of the regular hourly rate for the time over 30 minutes.
b. For others, if the consulting time is less than or equal to 20 minutes, there are no service charges; otherwise, service charges are 70% of the regular hourly rate for the time over 20 minutes. (For example suppose that a person has low income and spent 1 hour and 15 minutes, and the hourly rate is $70.00. Then the billing amount is 70.00 X 0.40 X (45 / 60) = 21.00).
Write a program that prompts the user to enter the customer first and last name, hourly rate, the total consulting time, and income. Once the customer information is entered, the program should generate and store a record for the customer.
The customer record should include a 6-digit customer id (customer id will be generated by the program). The customer id should be used as a key to retrieve the customer information (first and last name, income, hourly rate, consulting time, income, and billing amount).
Program should use a function, generateRecord, to create and add the customer record to the database (a dict that stores customers' information). generateRecord function takes first and last name, hourly rate, the total consulting time, and income as arguments. The program should calculate the billing amount and append/include it in the customer record.
Your program must contain a function, generateBillAmount that takes as input the hourly rate, the total consulting time, and the customer income.
The generateBillAmount should return the billing amount. The program should use a loop to process multiple customers. To exit the loop, the user should hit enter without entering customer information.
Upon exiting the loop, the program should print each customer information. If the database does not contain data, the program should print the following: " No customer to print"
Note: Customer information (first and last name, income, hourly rate, consulting time, income, and billing amount) must be stored in a tuple