цель моего проекта - найти точные изменения, используя блоки принятия решений. Весь мой код возвращает правильные ответы, за исключением ответа, который ожидается как «Без изменений».
Решение выходит как «Без изменений», как и ожидалось, но затем следует ошибкакод, который заявляет
Traceback (most recent call last):
File "main.py", line 21, in <module>
if dollars == 1:
NameError: name 'dollars' is not defined
Есть идеи, почему это может быть? Код, который у меня есть, ниже.
print("This program asks the user to enter a change amount using integers only,")
print("and outputs the change using the fewest coins.")
input_val = int(input("Enter the change amount as integer:"))
if input_val <= 0:
print("No Change")
else:
dollars = input_val // 100
input_val %= 100
quarters = input_val // 25
input_val %= 25
dimes = input_val // 10
input_val %= 10
nickels = input_val // 5
input_val %= 5
pennies = input_val
if dollars == 1:
print('%d dollar' % dollars)
elif dollars > 1:
print('%d dollars' % dollars)
if quarters > 1:
print('%d quarters' % quarters)
elif quarters == 1:
print('%d quarter' % quarters)
if dimes > 1:
print('%d dimes' % dimes)
elif dimes == 1:
print('%d dime' % dimes)
if nickels > 1:
print('%d nickels' % nickels)
elif nickels == 1:
print('%d nickel' % nickels)
if pennies > 1:
print('%d pennies' % pennies)
elif pennies == 1:
print('%d penny' % pennies)