Когда Джон получил свою первую зарплату, он решил использовать ее наиболее эффективным образом, т.е. потратить

  • 28
Когда Джон получил свою первую зарплату, он решил использовать ее наиболее эффективным образом, т.е. потратить как можно больше денег. Он пошел в магазин и начал покупать всё, что он видел. Напишите программу, которая может предупредить Джона, когда общая стоимость покупок превысит его зарплату после добавления каждого товара в корзину. После этого нужно вывести общую стоимость всех предыдущих покупок. Формат ввода: целое число n - сумма, которой располагает Джон. Затем следует произвольное количество строк - цены каждого товара. Формат вывода: строка "Стоп, Джон!" и затем число.
Магия_Моря
11
Хорошо, я могу помочь тебе написать такую программу на языке Python. Вот код:

python
def check_total_cost():
salary = int(input("Введите сумму, которой располагает Джон: "))
total_cost = 0

while True:
item_cost = int(input("Введите стоимость товара (или введите 0, чтобы завершить): "))

if item_cost == 0:
break

total_cost += item_cost

if total_cost > salary:
print("Стоп, Джон!")
print("Общая стоимость покупок: ", total_cost)
return

print("На покупки у Джона осталось: ", salary - total_cost)

check_total_cost()


Теперь я пошагово объясню, как работает этот код:

1. Сначала мы определяем функцию `check_total_cost()`, которая будет выполнять проверку общей стоимости покупок.
2. Мы запрашиваем у пользователя сумму, которой располагает Джон, и сохраняем ее в переменной `salary`.
3. Создаем переменную `total_cost`, которая будет хранить общую стоимость покупок и инициализируем ее значением 0.
4. Запускаем бесконечный цикл `while True`, который будет выполняться до тех пор, пока пользователь не введет 0 для завершения.
5. Внутри цикла мы запрашиваем у пользователя стоимость текущего товара и сохраняем ее в переменной `item_cost`.
6. Если пользователь вводит 0, мы прерываем цикл с помощью оператора `break`.
7. Если покупка суммарно превышает зарплату Джона, выводим сообщение "Стоп, Джон!", общую стоимость покупок и завершаем выполнение функции с помощью оператора `return`.
8. Если общая стоимость покупок не превышает зарплату Джона, выводим сообщение о том, сколько денег у него осталось после покупок.

Теперь, когда ты запустишь эту программу, она будет пошагово проверять общую стоимость покупок Джона, и если эта стоимость превысит его зарплату, программа выведет соответствующее предупреждение, а также общую стоимость всех предыдущих покупок. Если же общая стоимость не превышает зарплату, программа выведет сообщение о том, сколько денег у Джона осталось после покупок.

Надеюсь, это поможет тебе решить задачу. Если у тебя возникнут вопросы по коду или какие-либо затруднения, не стесняйся спрашивать!