Задача "Заем"

Требуется убедиться, что брать кредиты не выгодно. Т. е. надо вычислить, сколько придется платить в месяц по займу и сколько всего отдать денег банку за весь период.

Месячная выплата по займу вычисляется по такой загадочной формуле:
m = (s * p * (1 + p)n) / (12 * ((1 + p)n – 1)).
Мы не будем разбирать ее смысл, т.к. все-равно не осилим.

Достаточно знать, что в этой формуле:
m - размер месячной выплаты;
s - сумма займа (кредита);
p - процент банка, выраженный в долях единицы (т. е. если 20%, то будет 0.2).
n - количество лет, на которые берется займ.

Код решения данной задачи на языке Python может выглядеть так:

amount = input("Сколько хотите взять денег: ")
amount = int(amount)
pct = input("Под какой процент вам их дают: ")
pct = int(pct)
years = input("Насколько лет берете: ")
years = float(years)
 
pct = pct / 100 
month_pay = (amount * pct * (1 + pct)**years) / (12 * ((1 + pct)**years - 1))
print("Ваш месячный платеж составит: %.2f" % month_pay)
summa = month_pay * years * 12
print("За весь период вы заплатите: %.2f" % summa)
print("Это составит %.2f%% от первоначальной суммы" % ((summa / amount) * 100))

Здесь следует обратить внимание на операции с различными типами данных. Значение years преобразутеся к вещественному типу, т.к. кредит можно взять не на целое количество лет. В выражении pct = pct / 100 получается дробное число (т.е. переменная pct теперь связана с вещественным типом данных).

Примерные результаты:

Сколько хотите взять денег: 1000000
Под какой процент вам их дают: 15
Насколько лет берете: 10
Ваш месячный платеж составит: 16604.34
За весь период вы заплатите: 1992520.63
Это составит 199.25% от первоначальной суммы

 

Сколько хотите взять денег: 2000000
Под какой процент вам их дают: 20
Насколько лет берете: 20
Ваш месячный платеж составит: 34226.09
За весь период вы заплатите: 8214261.23
Это составит 410.71% от первоначальной суммы

 

Сколько хотите взять денег: 35000
Под какой процент вам их дают: 10
Насколько лет берете: 0.5
Ваш месячный платеж составит: 6267.36
За весь период вы заплатите: 37604.15
Это составит 107.44% от первоначальной суммы

Создано