Загрузка данных


DAYS = ["Понедельник", "Вторник", "Среда", "Четверг", "Пятница", "Суббота", "Воскресенье"]

def get_sales():
    sales = []
    print("Введите суммы продаж за каждый день:")
    for day in DAYS:
        while True:
            try:
                amount = float(input(f"  {day}: "))
                if amount < 0:
                    print("  Сумма не может быть отрицательной.")
                else:
                    sales.append(amount)
                    break
            except ValueError:
                print("  Введите число.")
    return sales

def total_sales(sales):
    return sum(sales)

def average_sales(sales):
    return sum(sales) / len(sales)

def best_day(sales):
    idx = sales.index(max(sales))
    return DAYS[idx], max(sales)

def worst_day(sales):
    idx = sales.index(min(sales))
    return DAYS[idx], min(sales)

def above_average_count(sales):
    avg = average_sales(sales)
    return sum(1 for s in sales if s > avg)

def print_report(sales):
    print("\n--- Отчёт по продажам за неделю ---")
    total = total_sales(sales)
    avg = average_sales(sales)
    best, best_val = best_day(sales)
    worst, worst_val = worst_day(sales)
    above = above_average_count(sales)

    print(f"Общая сумма:              {total:.2f} руб.")
    print(f"Средняя за день:          {avg:.2f} руб.")
    print(f"День с макс. продажами:   {best} ({best_val:.2f} руб.)")
    print(f"День с мин. продажами:    {worst} ({worst_val:.2f} руб.)")
    print(f"Дней выше среднего:       {above}")
    if total > 100000:
        print("Итог: план выполнен ✓")
    else:
        print("Итог: план не выполнен ✗")

sales_data = get_sales()
print_report(sales_data)