Чтобы рассчитать аннуитетный платеж по кредиту существует формула:
Я её включил в программу. Но так как нельзя всякие фигурные формулы вставлять в программу, я формулу перевёл в понятный для программы вид:
x = int(s)*(int(p)+(int(p)/((1+int(p))**int)-1).
Я не знаю почему программа не правильно считает по этой формуле. Может я неправильно переписал формулу в программу или я перепутал переменные, но программа считает не правильно.
Эту формулу я взял с сайта:
Там ещё есть и пример:
Допустим, сумма кредита составляет 100 тысяч рублей, годовая ставка – 10%, а срок займа – 6 месяцев. Ежемесячный платеж составит 17156,14, но проценты будут уменьшаться.
У меня вообще не такой результат.
Вот код (python 3.8; windows 10):
НА ТУПЫЕ НАЗВАНИЯ ПРЕМЕННЫХ НЕ ОБРАЩАЙТЕ ВНИМАНЯ!
Я её включил в программу. Но так как нельзя всякие фигурные формулы вставлять в программу, я формулу перевёл в понятный для программы вид:
x = int(s)*(int(p)+(int(p)/((1+int(p))**int)-1).
Я не знаю почему программа не правильно считает по этой формуле. Может я неправильно переписал формулу в программу или я перепутал переменные, но программа считает не правильно.
Эту формулу я взял с сайта:
Формула расчета кредита: виды погашения задолженностей
Кредитование в наше время уж чем-то из ряда вон выходящим назвать трудно. Потребительские кредиты на покупку товаров, кредитные карты, краткосрочные займы стали обыденным делом. Если посмотреть на Запад, вся Америка живет в кредит, а МВФ так вообще предоставляет займы целым государствам. Но...
fb.ru
Допустим, сумма кредита составляет 100 тысяч рублей, годовая ставка – 10%, а срок займа – 6 месяцев. Ежемесячный платеж составит 17156,14, но проценты будут уменьшаться.
У меня вообще не такой результат.
Вот код (python 3.8; windows 10):
НА ТУПЫЕ НАЗВАНИЯ ПРЕМЕННЫХ НЕ ОБРАЩАЙТЕ ВНИМАНЯ!
Python:
from tkinter import *
from tkinter import messagebox
root = Tk()
root.geometry("600x400")
root.title("...")
log = Label(text="Введите ваши данные\n\n", font=("Arial Bold", 15))
log_log = Label(text="Возраст:", font=("Arial Bold", 10))
log_log1 = Label(text='====>')
log_lodin = Entry()
log_password1 = Label(text="Первоначальная сумма кредита: ",font=("Arial Bold", 10))
log_password2 = Entry(show="*")
log_password3 = Label(text="Ежемесячная ставка по процентам: ",font=("Arial Bold", 10))
log_password4 = Entry(show="*")
log_password5 = Label(text="На сколько месяцев берётся кредит: ",font=("Arial Bold", 10))
log_password6 = Entry(show="*")
button_enter = Button(text="Проверить!", command=lambda: ttt())
button_enter1 = Button(text = "Рассчитать", command = lambda: ttt1(int(log_password2.get()), log_password4.get(), log_password6.get()))
# =========================================================================
# -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=--=
# =========================================================================
log.pack()
log_log.place(x=60, y=30)
log_lodin.place(x=60, y=60)
log_password1.place(x=60, y=90)
log_password2.place(x=60, y=115)
log_password3.place(x=60, y=140)
log_password4.place(x=60, y=165)
log_password5.place(x=60, y=190)
log_password6.place(x=60, y=215)
log_log1.place(x = 300, y = 60)
button_enter.place(x=500, y= 60)
button_enter1.place(x=500, y=140)
def ttt():
pop = log_lodin.get()
if int(pop) >= 18:
messagebox.showinfo("Одобрено!", "Проверка прошла успешно!")
else:
messagebox.showerror("Отказано", "На момент получения кредита вам должно быть не менее 18 лет!")
def ttt1(s,p,n):
x = int(s)*(int(p)+(int(p)/((1+int(p))**int(n))-1))
messagebox.showinfo("Выплата", "Вы должны выплачивать:\n", x)
root.mainloop()