The program that you coded for your assignment


The Aussie Best Car (ABC) authority now wants to create a database for the sales and bonus records of different years.

The program that you coded for your Assignment 3 (A3) should calculate Total Sales, Total Bonus etc. for a particular year. The ABC authority now wants to store the detail sales and bonus information for every year in a text file. So you are now requested to modify your program of Assignment A3 as follows.

The main program should first display a menu as follows. A user needs to select an operation from the main menu.

===========================================

Welcome to ABC Car Shop:

Please choose an option from the followings.
dd sales details in the database.
earch sales details for a given year in the database.
uit.
===========================================

If a user chooses the option
then the program first asks the year (such as 2014) for which the sales and bonus information is being calculated. It then computes the sales amount of each car type, total sales, total bonus and bonus contributed by each car type, as it did before in A3.
The program then collects the additional bonus rates for all car types from a text file called "additionalBonusRates.txt" (stored in the same folder) that contains the bonus rates as follows.

Toyota Kluger Nissan Patrol Ford Territory
========== ========== ===========
10% 5% 3%

Once the additional bonus rates are collected the program should pass them to a function called CalculateAdditionalBonus() that will then be used by another function called CalculateTotalBonus() like in A3. The program will display the total sales, sales for each car type, total bonus, bonus contributed by each car type, additional bonus for each car type and grand total bonus as it did for A3. However, it will now also display the year for which the sales and bonus information is being calculated. The year will be displayed at the beginning followed by the other information as follows.

YEAR: 2014

Total Sales: $500,000
Sales of Toyota Kluger: $500,000
Sales of Nissan Patrol: $0
Sales of Ford Territorry: $0

Total Bonus: $500
Bonus contributed by Toyota Kluger: $500
Bonus contributed by Nissan Patrol: $0
Bonus contributed by Ford Territory: $0

Additional Bonus for Toyota Kluger: $50
Additional Bonus for Nissan Patrol: $0
Additional Bonus for Ford Territory: $0

Grand Total Bonus: $550

The program will then store the information (as displayed) in a text file called "sales.txt". All information will be appended in the sales.txt file.

After storing the sales and bonus information in the sales.txt file, the program prompts the user with the following message, "Do you want to calculate the sales and bonus for another year (Y/N)?". If the user enters "Y" then the whole process will be repeated for another year. Otherwise the program displays the main menu for choosing an operation.

Now if the user chooses the option then the program first asks the use to enter the year (such as 2014) for which the sales and bonus information is being searched. To facilitate the Search option you must use the List data structure. The program then collects the sales and bonus information from the sales.txt file and displays it as follows.

YEAR: 2014

Total Sales: $500,000
Sales of Toyota Kluger: $500,000
Sales of Nissan Patrol: $0
Sales of Ford Territorry: $0

Total Bonus: $500
Bonus contributed by Toyota Kluger: $500
Bonus contributed by Nissan Patrol: $0
Bonus contributed by Ford Territory: $0

Additional Bonus for Toyota Kluger: $50
Additional Bonus for Nissan Patrol: $0
Additional Bonus for Ford Territory: $0

Grand Total Bonus: $550

After displaying the sales and bonus information the program prompts the user with the following message, "Do you want to search for another year (Y/N)?". If a user enters "Y" then the program asks the user to enter the year for which the information needs to be searched and displayed. If the user enters "N" then the program displays the main menu.

Finally, the program quits if the user chooses the option .

Use multiple functions, instead of using a single function to do everything. Create a good design of the functions to make the best use of the code and avoid duplicate calculations. You also need to design your program so that it has components that can be reused in another program, if needed.

Write an algorithm in structured English (pseudocode) that describes the steps required to perform the task specified. Some examples of pseudocode can be found at https://www.unf.edu/~broggio/cop2221/2221pseu.htm.

Implement your algorithm in Python.

Avoid duplicate code. For example, do not calculate the bonus in multiple places in your code.

Comment your code as necessary to explain it clearly.

Select 3 sets of test data that will demonstrate the correct "normal" operation of your program.

Run your program using the test data you have selected and save the output it produces in a text file.

Submit:

1. Your algorithm.
2. The table recording your chosen test data.
3. Source code for your Python implementation.
4. Output listings demonstrating the results of using the test data.

It is important that the output listings are not edited in any way.

Request for Solution File

Ask an Expert for Answer!!
Data Structure & Algorithms: The program that you coded for your assignment
Reference No:- TGS080784

Expected delivery within 24 Hours

©TutorsGlobe All rights reserved 2022-2023.