Пока пользователь не введет off вместо категории, программа будет запрашивать категорию и сумму. Цикл while не будет

Пока пользователь не введет "off" вместо категории, программа будет запрашивать категорию и сумму. Цикл while не будет прерываться, даже если получен "break". Когда пользователь вводит "off" вместо категории, программа выведет сообщение "Касса закрыта." и завершит работу. После получения стоимости товаров, в зависимости от категории, программа применит определенную скидку и выведет сумму к оплате на экран. Затем будет запрошена новая категория. Если для введенной категории нет скидки, программа выведет сумму к оплате без применения скидки. Доступные скидки: 10% скидка для категории "молочные продукты". Категория
Gloriya

Gloriya

Хорошо! Давайте по шагам разберем задачу.

1. Сначала нам нужно создать цикл while, который будет продолжаться, пока пользователь не введет "off" вместо категории товара. Для этого мы можем использовать условие "while True", чтобы создать бесконечный цикл, который будет прерываться только при выполнении определенного условия.

python
while True:


2. Внутри цикла while, мы будем запрашивать у пользователя категорию и сумму товара. Мы можем использовать функцию input() для ввода данных. Категорию и сумму мы можем сохранить в соответствующих переменных.

python
kategoria = input("Введите категорию товара (или "off" для выхода): ")
if kategoria == "off":
break

summa = float(input("Введите стоимость товара: "))


3. После получения стоимости товара, мы должны проверить, существует ли скидка для заданной категории. Если скидка существует, мы применяем ее и выводим сумму к оплате на экран. Иначе, мы выводим просто сумму без скидки.

python
if kategoria == "молочные":
skidka = 0.1 # 10% скидка для категории "молочные"
summa_skidka = summa - (summa * skidka)
print(f"Сумма к оплате с учетом скидки: {summa_skidka} руб.")
else:
print(f"Сумма к оплате: {summa} руб.")


4. После вывода суммы к оплате, мы запрашиваем новую категорию товара и цикл повторяется. Если пользователь введет "off", цикл прерывается, и программа выводит сообщение "Касса закрыта." и завершает свою работу.

python
print("Касса закрыта.")


Итак, вот как будет выглядеть полный код:

python
while True:
kategoria = input("Введите категорию товара (или "off" для выхода): ")
if kategoria == "off":
break

summa = float(input("Введите стоимость товара: "))

if kategoria == "молочные":
skidka = 0.1 # 10% скидка для категории "молочные"
summa_skidka = summa- (summa * skidka)
print(f"Сумма к оплате с учетом скидки: {summa_skidka} руб.")
else:
print(f"Сумма к оплате: {summa} руб.")

print("Касса закрыта.")


Теперь, когда вы запустите этот код, программа будет запрашивать у вас категорию и сумму товара и выводить сумму к оплате, учитывая скидку для категории "молочные". Вы можете ввести "off", чтобы завершить работу программы.
Знаешь ответ?
Задать вопрос
Привет!
hello