Новая Школа - онлайн-школа подготовки к ЕГЭ
Задача Задача №3579949
А
Аноним
05 марта 2026 12:30 · публичный вопрос
А
Аноним

Напиши программу, которая рассчитывает общую стоимость товаров, добавленных в корзину, и проверяет, достаточно ли у пользователя средств для их оплаты.

Ответ нейросети
05 марта 2026 12:30

Вот простая Python-программа, которая расчитывает общую стоимость товаров в корзине и проверяет, хватает ли средств пользователя. Она рассчитана на средней школе: пошаговый подход, понятные вводы и выводы.

Как работает алгоритм (пошагово):

  • Пользователь вводит количество товаров в корзине.
  • Для каждого товара вводится название, цена за единицу и количество.
  • Программа считает общую стоимость как сумма price * quantity по всем товарам.
  • Затем запрашивает доступные средства пользователя и сравнивает их с общей стоимостью.
  • Выводит итоговую сумму и сообщение о том, достаточно ли средств, а также сдачу или недостачу.

Код (Python 3):

def main(): try: n = int(input("Введите количество товаров в корзине: ")) except ValueError: print("Некорректный ввод количества. Ожидалось целое число.") return

items = []
total = 0.0

for i in range(n):
    print(f"\nТовар {i + 1}:")
    name = input("  Название: ").strip()
    while True:
        try:
            price = float(input("  Цена за единицу (в рублях): "))
            if price < 0:
                raise ValueError
            break
        except ValueError:
            print("  Неверный формат цены. Введите неотрицательное число.")
    while True:
        try:
            qty = int(input("  Количество: "))
            if qty < 0:
                raise ValueError
            break
        except ValueError:
            print("  Неверный формат количества. Введите неотрицательное целое число.")
    items.append((name, price, qty))
    total += price * qty

print(f"\nИтого к оплате: {total:.2f} ₽")

while True:
    try:
        balance = float(input("Введите доступные средства пользователя (в ₽): "))
        if balance < 0:
            raise ValueError
        break
    except ValueError:
        print("Неверный формат суммы. Введите неотрицательное число.")

if balance >= total:
    change = balance - total
    print("\nДостаточно средств. Оформление заказа возможно.")
    print(f"Сдача/Остаток: {change:.2f} ₽")
else:
    shortage = total - balance
    print("\nНедостаточно средств.")
    print(f"Не хватает: {shortage:.2f} ₽")

if name == "main": main()

Советы:

  • Можно легко расширить программу, добавив обработку скидок, налогов или бесплатной доставки.
  • Для другого формата ввода можно изменить часть кода, чтобы считывать данные из файла или JSON.