основываясь на условии я сделал код а он не работает
category = input('Категория (off - завершить):')
summa = int(input('Сумма:'))
if category.lower == 'Выпечка':
print('Скидка 30%. К оплате:',summa * 0.70)
elif category.lower() == 'Молочные продукты':
print('Скидка 10%. К оплате:',summa * 0.90)
else:
print('Сумма без скидки:', summa)
category = input('ВВедите категорию продуктов:')
print('Касса закрыта')
условие:
Программа должна запрашивать категорию и сумму, пока вместо категории не будет введено стоп-слово «off».
1. Когда вместо категории введено слово «off» — программа должна вывести «Касса закрыта.» и завершить работу.
2. Получив стоимость товаров, программа должна в зависимости от категории применить определённую скидку и вывести сумму к оплате на экран. Затем снова запросить ввод категории.
3. Если по введённой категории скидок нет, то программа должна без применения скидок вывести сумму к оплате.
Доступные скидки:
Категория «молочные продукты» — скидка 10%.
Категория «выпечка» — скидка 30%.
Итог:
Категория (off - завершить):
>>> выпечка
Сумма:
100
Скидка 30%. К оплате: 70.0
Введите категорию продуктов:
>>> off
Касса закрыта.
Answers & Comments
Ошибки / Объяснение:
1. В условие сказано что будет запрашивать до тех пор, пока не будет off слова, буквально от слова "пока"(while на английском) должен стоять цикл While. Я поставила While True, а не пока не off, потому что тогда бы оно пошло после категории off еще спрашивать о сумме. В ином случае же можно было сделать while category != "off".
3. На 3ей строчке пропущены скобки: if category.lower() == 'выпечка'..
4. Проверку на регистр ты хорошо придумал, но ты немного ошибся, буквально ты сделал "Если выпечка == Выпечка, то", то-есть когда делаешь проверку для любого регистра на мелкие буквы, в ответе тоже должны быть мелкие буквы : if category.lower() == 'выпечка'..
В общем я подправила код, вот:
Python Code:
print('Категория (off - завершить):')
while True:
category = input('Введите категорию продуктов:')
if category.lower() == 'off':
break
summa = int(input('Сумма:'))
if category.lower() == 'выпечка':
print('Скидка 30%. К оплате:', summa * 0.70)
elif category.lower() == 'молочные продукты':
print('Скидка 10%. К оплате:', summa * 0.90)
else:
print('Сумма без скидки:', summa)
print('Касса закрыта.')
enabled = True
while enabled == True:
----category = input('Введите категорию продуктов:')
----if category.lower() != 'off':
--------summa = int(input('Сумма:'))
--------if category.lower() == 'выпечка':
------------print('Скидка 30%. К оплате:', summa * 0.70)
--------elif category.lower() == 'молочные продукты':
------------print('Скидка 10%. К оплате:', summa * 0.90)
--------else:
------------print('Сумма без скидки:', summa)
----else:
--------enabled = False