#python #if-statement
#python #if-statement
Вопрос:
У меня есть программа, которую мне нужно написать для колледжа, и в моем коде есть ошибка, которую я не знаю, как исправить
#calculate savings and print users total cost
if voucher_quant < 20:
print("Your total will be £", str(voucher_value*voucher_quant))
elif voucher_quant => 20 and voucher_quant=<40:
print("Your total will be £", str((voucher_value*voucher_quant)*0.05)
elif voucher_quant =>41 and voucher_quant =<70:
print("Your total will be £", str((voucher_value*voucher_quant)*0.075)
elif voucher_quant =>71 and voucher_quant =<100:
print("Your total will be £", str((voucher_value*voucher_quant)*0.1)
кто-нибудь может мне помочь, как это исправить?
Комментарии:
1. Используйте
if
вместоelif
, если вы делаете отступы. Или иначе, снимите указательelif
с2. Все elif должны начинаться с той же позиции, что и if . programiz.com/python-programming/if-elif-else
3. Не делайте отступы в каждом операторе elif. Вам также нужен оператор терминала ‘else’
Ответ №1:
elif
должен быть на том же уровне идентификации, что и его if
.
Операторы сравнения похожи <=
и нет =<
. =
было бы последним
Ваши операторы печати не завершают скобки
Этот код синтаксически корректен
voucher_quant = 50 # Change as you want
voucher_value = 10 # Change as you want
if voucher_quant < 20:
print("Your total will be £", str(voucher_value*voucher_quant))
elif voucher_quant >= 20 and voucher_quant<=40:
print("Your total will be £", str((voucher_value*voucher_quant)*0.05))
elif voucher_quant >= 41 and voucher_quant <= 70:
print("Your total will be £", str((voucher_value*voucher_quant)*0.075))
elif voucher_quant >= 71 and voucher_quant<=100:
print("Your total will be £", str((voucher_value*voucher_quant)*0.1))
#Output
#Your total will be £ 37.5