Как работает функция Pow () в Python в математическом уравнении? - PullRequest
0 голосов
/ 27 октября 2019

Создание ипотечного калькулятора, включая 3 заданных программистом ввода (заимствованная сумма, процентная ставка и 30-летний срок окупаемости).

Я пытаюсь превратить это математическое уравнение

    (p * (1 + r)n * r) / ((1 + r)n - 1)

в код, используя переменные, n будет представлять квадрат пользовательского ввода

, тогда у меня естьраспечатать сводку всех трех входных данных и сумму вышеприведенного уравнения.

Сначала я импортировал математику и попробовал следующее

math.pow(an, 2)
int(pow(an, 2))
int(math.pow(an, 2))

Даже когда япробовал без функции pow это не сработало бы

(amt * (1+per)an** * per)/((1+per)an** - 1)

Ниже мой текущий код:

    import math

    #input values
    amt = input("Amount Borrowed:")
    per = input("Annual interest rate:")
    an = input("Payback period:")

    #output values
    mo = (amt * (1+per)pow(an, 2) * per)/((1+per)pow(an, 2) - 1)

    #summary
    print("Amount Borrowed: ",  amt)
    print("Annual Interest Rate:", per)
    print("Total Years of Payments:", an)
    print("Your monthly mortgage payment is: {mo:.2f}")

Пример ожидаемых результатов:

Amount borrowed (programmer input) = $270000
Annual interest rate (programmer input) = 5.125%
Payback period (programmer input) = 30 Years
Monthly payment (calculated output) = $1470.11

Ошибки:

mo = (amt * (1+per)pow(an, 2) * per)/((1+per)pow(an, 2) - 1)

SyntaxError: неверный синтаксис

mo = (amt * (1+per)an** * per)/((1+per)an** - 1)

SyntaxError: неверный синтаксис

1 Ответ

0 голосов
/ 27 октября 2019

Вы не можете написать a(b) для умножения a и b. Синтаксис Python не совсем соответствует типичному математическому синтаксису.

Вы пытаетесь сделать это, когда пишете

(1+per)pow(an, 2)

Вам нужно явно указать *, если вы хотите умножить:

(1+per) * pow(an, 2)
...