profile
Размещено 2 года назад по предмету Информатика от bogdan2959

основываясь на условии я сделал код а он не работает

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
Касса закрыта.

  1. Ответ на вопрос
    Ответ на вопрос дан 00sovok000negra00

    Ошибки / Объяснение:

    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('Касса закрыта.')

    1. Ответ на вопрос
      Ответ на вопрос дан bogdan2959
      а можно без break сделать?
    2. Ответ на вопрос
      Ответ на вопрос дан 00sovok000negra00
      команда break завершает любой цикл, в данном случае while True, без него код больше становится:
    3. Ответ на вопрос
      Ответ на вопрос дан 00sovok000negra00
      print('Категория (off - завершить)')
      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
    4. Ответ на вопрос
      Ответ на вопрос дан 00sovok000negra00
      и в конец еще просто print('Касса закрыта.')
    5. Ответ на вопрос
      Ответ на вопрос дан 00sovok000negra00
      тире - это пробел, просто этот сайт не позволяет с ними комментировать вроде как
Не тот ответ на вопрос, который вам нужен?
Найди верный ответ
Самые новые вопросы
tegysigalpa2012
Русский язык - 5 лет назад

Помогите решить тест по русскому языку тест по русскому языку «местоимение. разряды местоимений» для 6 класса 1. укажите личное местоимение: 1) некто 2) вас 3) ни с кем 4) собой 2. укажите относительное местоимение: 1) кто-либо 2) некоторый 3) кто 4) нам 3. укажите вопросительное местоимение: 1) кем-нибудь 2) кем 3) себе 4) никакой 4. укажите определительное местоимение: 1) наш 2) который 3) некий 4) каждый 5. укажите возвратное местоимение: 1) свой 2) чей 3) сам 4) себя 6. найдите указательное местоимение: 1) твой 2) какой 3) тот 4) их 7. найдите притяжательное местоимение: 1) самый 2) моего 3) иной 4) ничей 8. укажите неопределённое местоимение: 1) весь 2) какой-нибудь 3) любой 4) этот 9. укажите вопросительное местоимение: 1) сколько 2) кое-что 3) она 4) нами 10. в каком варианте ответа выделенное слово является притяжательным местоимением? 1) увидел их 2) её нет дома 3) её тетрадь 4) их не спросили

Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.