Системное администрирование

Решите задачу про прогрессивный налог python

# Задача 2. Прогрессивный налог
# В некоторых странах действует так называемая прогрессивная шкала налогообложения: чем больше ты зарабатываешь, тем больший налог платишь. Нужно написать программу, которая будет рассчитывать сумму налога исходя из прибыли. Если прибыль до 10 000 — ставка налога равна 13%, начиная с 10 000 и до 50 000 — 20%. А начиная с 50 000 — 30%. А также нужно добавить «проверку на дурака»: если ввели число меньше нуля, то вывести сообщение: «Ошибка: доход не может быть отрицательным».
Такой дурной налог был в РФ в 1990-х. Причём, ставка налога в 20% начиналась с довольно низкого порога, потому он и был дурной. Потом немного подправили, вставили в середину порог в 15%. Но нижний порог был не 13%, а 12%.

Вот так это считается:
 p = int(input("Прибыль: "))
if (p < 0):
print("Ошибка: доход не может быть отрицательным")
exit(1)
b = [0, 10000, 50000]
r = [0.13, 0.2, 0.3]

def cap(p, i): return p if i >= len(b) else min(b[i], p)
tax = sum([max(0, cap(p, i + 1) - b[i]) * r[i] for i in range(len(r))])
print("Налог:", tax)
Примеры:
 Прибыль: 10000
Налог: 1300.0

Прибыль: 15000
Налог: 2300.0

Прибыль: 50000
Налог: 9300.0

Прибыль: 100000
Налог: 24300.0

Можно ещё округлить налог к рублю, как это делается в РФ, тогда просто выводите int(tax).
Владимир Корниенко
Владимир Корниенко
54 053
Лучший ответ
Попробуй это
income = int(input())
if (income < 0) {
console.log("Error: income cannot be negative");
}

else if (income >= 0 && income < 10000) {
tax = income * 0.13;
console.log("Tax amount is " + tax);
}

else if (income >= 10000 && income < 50000) {
tax = income * 0.2;
console.log("Tax amount is " + tax);
}

else {
tax = income * 0.3;
console.log("Tax amount is " + tax);
}
Владимир Волчанов Извиняюсь, вот это
# Get the income from the user
income = float(input("Please enter your income: "))

# Check if income is negative
if income < 0:
print("Error: Income cannot be negative")
exit()

# Calculate the tax rate
if income <= 10000:
tax_rate = 0.13
elif income <= 50000:
tax_rate = 0.20
else:
tax_rate = 0.30

# Calculate the tax amount
tax_amount = income * tax_rate

# Output the amount of tax owed
print("You owe a total of ${:.2f} in taxes.".format(tax_amount))
Владимир Корниенко Прогрессивный налог считается не так. Прежде, чем бежать кодить, надо понять задачу. Когда вы только научитесь этому простому принципу...