0

是否有人可以使该算法易于理解,以便为我的应用程序输入计算。

算法

谢谢

解释:

算法描述

4

3 回答 3

1

是的,该算法当然可以用编程语言表达,但是我不会提供实现,而是提供一些伪代码来帮助您入门。
所以我们看到的第一件事x就是处理金钱,所以让我们将其表示为双重

double monthlyPayment //this is X

接下来我们看到这P sub 0是总贷款金额,所以我们也将其表示为双倍

double loanAmount // this is P sub 0  

接下来我们看到这i是利率,所以这也将是双倍

double interestRate // this is i

接下来我们看到这n是还贷的月数,这是一个整数

int monthsRemaining // this is n

所以看看你提出的公式,我们采取以下措施:

monthlyPayment = (loanAmount * interestRate) /  1 - (1 + interestRate) ^ (-1 * monthsRemaining)

现在没有实际实施这个我相信你可以从这里得到它。

于 2011-03-06T18:32:42.873 回答
0

这是您可以使用 Javascript 表示它的方式:

function repayment(amount, months, interest) {
    return (amount * interest) / (1 - Math.pow(1 + interest, -months));
}
于 2011-03-06T18:34:17.053 回答
0

你在寻找方程的解释吗?它处理贷款。当您贷款时,您会在一定的月数(n)内取出一定数量的钱(P)。此外,为了使贷款对贷款人有价值,您需要支付利率 (i)。这是您每月对剩余贷款金额收取的百分比。

因此,您需要计算每个月 (x) 必须支付多少才能在设定的时间(n 个月)内还清贷款。这并不像将贷款金额(P)除以月数(n)那么简单,因为您还必须支付利息。

因此,等式为您提供每月必须支付的金额,以偿还原始贷款和任何利息。

如果您使用的是 Java:

public double calculateMonthlyPayment(double originalLoan, double interestRate, double monthsToRepay) {
        return (originalLoan*interestRate)/(1-(Math.pow((1+interestRate), -monthsToRepay)));
    }
于 2011-03-06T18:35:44.137 回答