DEBUG #3 Each file starts with some comments that describe the problem. Comments
ID: 3701721 • Letter: D
Question
DEBUG #3 Each file starts with some comments that describe the problem. Comments are lines that begin with two slashes (//). Following the comments, each file contains pseudocode that has one or more bugs you must find and correct.
// This pseudocode should determine and output
// the rental fees for cars.
// Standard cars rent for $65 per day,
// compacts rent for $40 per day,
// and subcompacts rent for $30 per day.
// Rentals for at least 7 days receive a 20% discount.
// An error message is displayed if the car type
// is not valid.
start
Declarations
string carType
num days
num STD_RATE = 65
num COM_RATE = 40
num SUB_RATE = 30
num DAYS_FOR_DISCOUNT = 10
num DISCOUNT_RATE = 0.20
string QUIT = "ZZZZ"
getReady()
while carType <> QUIT
detailLoop()
endwhile
finish()
stop
getReady()
output Enter car type or , QUIT, to quit
input carType
return
detailLoop()
output "Enter days rented "
input days
if carType = "Standard" then
rate = STD_RATE
else
if car_Type = "Compact" then
rate = COMPACT_RATE
else
if carType = "Subcompact" then
rate = SUB_RATE
else
rate = 0
output "Invalid car type"
endif
endif
endif
if rate <> 0
if days >= DAYS_FOR_DISCOUNT then
rate = rate * DISCOUNT_RATE
endif
output carType, days
output "Enter car type or ", QUIT, " to quit "
input carType
return
finish()
output "End of program"
return
Explanation / Answer
The corrected lines are given in bold
start Declarations string carType num days num rentalFee num STD_RATE = 65 num COM_RATE = 40 num SUB_RATE = 30 num DAYS_FOR_DISCOUNT = 7 num DISCOUNT_RATE = 0.20 string QUIT = "ZZZZ" getReady() while carType <> QUIT detailLoop() endwhile finish() stop getReady() output Enter car type or , QUIT, to quit input carType return detailLoop() output "Enter days rented " input days if carType = "Standard" then rate = STD_RATE else if carType = "Compact" then rate = COM_RATE else if carType = "Subcompact" then rate = SUB_RATE else rate = 0 output "Invalid car type" endif endif endif if rate <> 0 if days >= DAYS_FOR_DISCOUNT then rate = rate * (1 - DISCOUNT_RATE) endif end if rentalFee = rate * days output carType, days, rentalFee output "Enter car type or ", QUIT, " to quit " input carType return finish() output "End of program" return
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.