Question: Codio Python project Rental car Billing My output is (B)udget, (D)aily, or (W)eekly rental? Number of Days Rented: Starting Odometer Reading: Ending Odometer Reading: Rental
Codio Python project Rental car Billing
My output is (B)udget, (D)aily, or (W)eekly rental? Number of Days Rented: Starting Odometer Reading: Ending Odometer Reading: Rental Summary Rental Code: D Rental Period: 5 Starting Odometer: 1234 Ending Odometer: 2222 Miles Driven: 988 Amount Due: $422.00
it should be
(B)udget, (D)aily, or (W)eekly rental? Number of Days Rented: Starting Odometer Reading: Ending Odometer Reading: Rental Summary Rental Code: D Rental Period: 5 Starting Odometer: 1234 Ending Odometer: 2222 Miles Driven: 988
Amount Due: $324.40
Please advise on my codes error?
My code
rentalCode = input('(B)udget, (D)aily, or (W)eekly rental? ') if rentalCode == 'B' or rentalCode == 'D': rentalPeriod = int(input('Number of Days Rented: ')) else: rentalPeriod = int(input('Number of Weeks Rented: '))
daysRented = rentalPeriod
#Assigning a dollar amount to the different rates
budget_charge = 40.00
daily_charge = 60.00
weekly_charge = 190.00
#test the code with printing statements
#print(rentalCode)
#print(rentalPeriod)
#Collect customer data part 2
#Compute thge basecharge
if rentalCode == 'B': baseCharge = daysRented * budget_charge
elif rentalCode == 'D': baseCharge = daysRented * daily_charge
elif rentalCode == 'W': baseCharge = daysRented * weekly_charge
odoStart = input('Starting Odometer Reading: ')
odoEnd = input('Ending Odometer Reading: ')
#print(odoStart) #print(odoEnd) #print(baseCharge)
totalMiles = int(odoEnd) - int(odoStart)
#print(totalMiles)
if rentalCode == 'B': mileCharge = 0.25 * totalMiles
averageDayMiles = totalMiles / daysRented
if rentalCode == 'D' and averageDayMiles <= 100: extraMiles = 0
if averageDayMiles > 100 and rentalCode == 'D': extraMiles = averageDayMiles - 100 mileCharge = 0.25 * extraMiles * rentalPeriod
weeksRented = rentalPeriod
averageDayMiles = totalMiles / weeksRented
if rentalCode == 'W' and averageDayMiles > 900: mileCharge = weeksRented * 100.00
elif rentalCode == 'W' and averageDayMiles <= 900: mileCharge = 0 amtDue = baseCharge + mileCharge
print('Rental Summary')
print('Rental Code: '+str(rentalCode))
print('Rental Period: '+str(rentalPeriod))
print('Starting Odometer: '+str(odoStart))
print('Ending Odometer: '+str(odoEnd))
print('Miles Driven: '+str(totalMiles))
print('Amount Due: '+'${:,.2f}'.format(amtDue))
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
