Розв’язування компетентнісних задач "Пенсійний калькулятор"
Мама восьмикласника Максима працює у відділенні Пенсійного фонду. Максим запропонував розробити для неї програму, яку вона може використати у своїй роботі. В Україні визначено такий порядок оподаткування пенсії фізичних осіб:
встановлюється мінімальна заробітна плата (наприклад, із січня по квітень — 1378 грн, із травня по листопад — 1450 грн, із грудня — 1550 грн);
якщо сума нарахування s менша, ніж три мінімальні заробітні плати, то пенсія не оподатковується;
якщо сума нарахування s більша за три мінімальні заробітні плати, але не перевищує 10 мінімальних заробітних плат, то із суми, яка перевищує три мінімальні заробітні плати, нараховують 15 % податку;
якщо сума нарахування s більша, ніж 10 мінімальних заробітних плат, то оподатковується сума, що перевищує три мінімальні зарплати. Із суми, що залишилась до 10 мінімальних заробітних плат, нараховують 15 % податку, а із суми, що перевищує 10 мінімальних заробітних плат, нараховують 20 % податку.
Розробіть у середовищі Python проект Пенсійний калькулятор, у якому користувач вводить у запросі розмір нарахованої пенсії та (визначте самостійно) розмір мінімальної заробітної плати. Після натиснення кнопки "Run" отримує розміри суми нарахованої пенсії та податку.
Ответы
# встановлюємо мінімальну заробітну плату на рік
min_salary = [1378, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1550, 1550, 1550]
# отримуємо суму нарахування пенсії
s = float(input("Введіть суму нарахування пенсії: "))
# визначаємо кількість мінімальних заробітних плат
min_salaries = s / min_salary[0]
# перевіряємо, чи не менше сума нарахування пенсії за три мінімальні заробітні плати
if min_salaries < 3:
print("Пенсія не оподатковується.")
# перевіряємо, чи більше сума нарахування пенсії за три, але не більше ніж за десять мінімальних заробітних плат
elif 3 <= min_salaries <= 10:
tax_base = s - (3 * min_salary[0])
tax = 0.15 * tax_base
total_tax = round(tax, 2)
total_pension = round(s - total_tax, 2)
print("Податок: ", total_tax, " грн")
print("Пенсія: ", total_pension, " грн")
# якщо більше сума нарахування пенсії за десять мінімальних заробітних плат
else:
tax_base = s - (3 * min_salary[0])
excess_tax_base = tax_base - (7 * min_salary[0])
if excess_tax_base > 0:
tax = (0.15 * (10 * min_salary[0] - (3 * min_salary[0]))) + (0.2 * excess_tax_base)
else:
tax = 0.15 * (10 * min_salary[0] - (3 * min_salary[0]))
total_tax = round(tax, 2)
total_pension = round(s - total_tax, 2)
print("Податок: ", total_tax, " грн")
print("Пенсія: ", total_pension, " грн")