Assignment title: Information


Dr Ho Coaching Centre gives lessons on three programming languages: Python, Java and C++. They have divided each programming language into a number of topics such as if-statement, while-loop, and for-loop. They teach each topic through a standard one-hour long lesson.Students can request any number of additional hours on the topics that they have already studied. They can also request for any number of practice tests at the centre.The centre charges for each standard lesson, additional hour and test according to the table below. Language Fee for each Lesson Fee for an additional hour Fee for each testPython $300 $200 $250Java $200 $150 $150C++ $175 $175 $170For example, if a student studying Python requests 20 topics, 10 additional hours and 5 tests the total tuition fee for him/her will be ($6,000 + $2,000 + $1,250) = $9,250.The Principal of Dr Ho Coaching Centre (Dr Wise Ho) contracts you to build a computer system, Power of Knowledge (PK), for them in Python.PK will ask them to input, for a student, the name of the programming language that the student wants to study, the number of topics/lessons that he/she wants to study, the number of additional hours that he/she wants to study, and the number of tests that he/she wants to sit for. Based on the inputs the program will compute and display the tuition fee for the lessons, additional hours and tests. It will also display the total tuition fee.PK will then ask Dr Ho "Do you want to compute the tuition fee for another student?"If Dr Ho wants to compute the tuition fee for another student (i.e. enters "Y" or "y" to the question above), PK will ask for all these inputs again for the new student, and compute and display the total tuition fee for the new student. The program will then again ask Dr Ho "Do you want to compute the tuition fee for another student?"The above process will continue as long as they want to compute the tuition fee for another student. However, if Dr Ho does not want to compute the tuition fee for another student (i.e. he enters anything other than "Y" or "y") then the program will exit.Dr Ho also imposes the minimum number of lessons, additional hours and tests, that a student must enrol for, as follows.Language Minimum number of Lessons Minimum additional hours Minimum number of testsPython 5 5 5Java 4 10 2C++ 6 7 2If a student wants to take an invalid number of lessons, additional hours and/or tests, PK will ask to enter them again. For example, when PK prints "Enter the number of lessons:" if a student studying Python wants to enter 4 then PK will again print "Enter the number of lessons:" until a valid number of lessons is entered.A typical example of the display of your program can be as follows. Your program MUST follow the same display style.---------------------------------------------------------------------------------------------- Welcome to Dr Ho Coaching Centre-----------------------------------------------------------------------------------------------Enter the name of the programming language: PythonEnter the number of lessons: 4Enter the number of lessons: 20Enter the additional hours: 10Enter the number of tests: 5Tuition fee for the lessons (in dollars): 6000Tuition fee for additional hours (in dollars): 2000Tuition fee for the tests (in dollars): 1250Total tuition fee (in dollars): 9250Do you want to compute the tuition fee for another student? YEnter the name of the programming language: JavaEnter the number of lessons: 25Enter the additional hours: 10Enter the number of tests: 10Tuition fee for the lessons (in dollars): 5000Tuition fee for additional hours (in dollars): 1500Tuition fee for the tests (in dollars): 1500Total tuition fee (in dollars): 8000Do you want to compute the tuition fee for another student? 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 http://www.unf.edu/~broggio/cop2221/2221pseu.htmSelect 3 sets of test data that will demonstrate the correct 'normal' operation of your program. Select another 2 sets of test data that will demonstrate the "abnormal" operation of your program. Set these out in the same format as in Assignment 1.Implement your algorithm in Python.Avoid duplicate code. For example, DO NOT calculate the tuition fee in multiple places in your code.Comment your code as necessary to explain it clearly.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.