Question: You have been tasked to construct a program that will prepare automobile liability insurance estimates for customers. The input consists of: The name of the

You have been tasked to construct a program that will prepare automobile liability insurance estimates for customers. The input consists of: The name of the customer The age of the customer The number of traffic violations Based on this information you will determine their status as a driver, following these guidelines: Number of Violations Risk Code Risk Type 4 or More 1 High 3 2 Moderate 2 2 Moderate 1 3 Low 0 4 No More than 4 tickets indicate a Code 1 driver, which is High Risk. Code 2 Drivers who have either 2 or 3 tickets, are considered Moderate Risk drivers. Any driver with one ticket is deemed Code 3, and considered Low Risk. Drivers without any tickets are considered Code 4, which is No Risk. Based upon this classification you can then give them the appropriate quote. Pricing of Insurance: Age Number of Tickets Risk Code Price Under 25 4 or more 1 $480.00 25 or older 4 or more 1 $410.00 Under 25 3 2 $450.00 25 or older 3 2 $390.00 Under 25 2 2 $405.00 25 or older 2 2 $365.00 Under 25 1 3 $380.00 25 or older 1 3 $315.00 Under 25 0 4 $325.00 25 or older 0 4 $275.00 Sample output line follows (Items underlined are variable values): Customer Name, as a ---- risk driver, your insurance will cost -----. You are to account for invalid input. Drivers must be between the ages of 16 and 105. Number of traffic violations cannot be less than 0. Display only the message Invalid Entry in either case. I need a loop to allow the program to run multiple times as well as a way to validate age. Here is what I have so far:

def main(): #getting name, age and ensuring customer is in the right age group new_quote = 'y' while new_quote =='y' or new_quote == 'Y': name = input("Please enter your name:") age = int(input("Please enter your age:")) if age<16 or age>106: print("Invalid age") new_quote =='y' #getting number of traffic violations if age >=16 and age<106: traffic_violations your number of violations:")) if traffic_violations<0: print("invalid entry") else: risk_code,risk_type = calc_risk(traffic_violations) insurance_price = calcInsurance(age, traffic_violations, risk_code) display_quote(name,risk_type,insurance_price) new_quote = input("Would you like another quote? y or n: ") print("have a good day") break #calculate the risk code and type def calc_risk(traffic_violations):>=4: risk_code = 1 risk_type = 'high' elif traffic_violations == 3: risk_code = 2 risk_type = 'moderate' elif traffic_violations == 2: risk_code = 3 risk_type = 'moderate' elif traffic_violations == 1: risk_code = 3 risk_type = 'low' elif traffic_violations == 0: risk_code = 4 risk_type = 'no' return risk_code, risk_type # gets the insurance price def calcInsurance(age, number_tickets, risk_code) : if age <= 24 and number_tickets >= 4 and risk_code == 1: insurance_price = 480 elif age >= 25 and number_tickets >= 4 and risk_code == 1: insurance_price = 410 elif age <= 24 and number_tickets == 3 and risk_code == 2: insurance_price4 = 450 elif age >= 25 and number_tickets == 3 and risk_code == 2: insurance_price = 390 elif age <= 24 and number_tickets == 2 and risk_code == 2: insurance_price = 405 elif age >= 25 and number_tickets == 2 and risk_code == 2: insuransce_price = 365 elif age <= 24 and number_tickets == 1 and risk_code == 3: insurance_price = 380 elif age >= 25 and number_tickets == 1 and risk_code == 3: insurance_price = 315 elif age <= 24 and number_tickets == 0 and risk_code == 4: insurance_price = 325 elif age >= 25 and number_tickets == 0 and risk_code == 4: insurance_price = 275 #display output def display_quote(name, risk_type, insurance_price): print() print(name,",as a",risk_type,"risk driver, your insurance will be $[.2f]".format(insurance_price)) #call the main function main() It is telling me the break is outside the loop, so I am not sure it is actually running. Can anyone help?

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!