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)