使用Math.Pow计算月度贷款

时间:2018-03-01 03:15:15

标签: c# webforms pow

我正在尝试使用以下公式计算每月的贷款付款:

Loan Formula

其中L是贷款金额,R是月利率,N是付款数。

首先,我从网络应用程序获取输入并进行计算,使其成为公式的正确格式:

double loanAmount = double.Parse(txtLoanAmount.Text) - double.Parse(txtDownPayment.Text);
double interestRate = (double.Parse(txtInterestRate.Text) / 100) / 12;  
double loanPeriod = double.Parse(txtLoanPeriod.SelectedValue) * 12;

然后,这是我目前如何编写公式:

Answer = loanAmount * interestRate / 1 - Math.Pow(1 / 1 + interestRate, loanPeriod);

我对math.pow函数不太熟悉(想想之前我曾经使用过它),所以我不确定我是否正确使用它。如果有人有任何建议,将不胜感激!

1 个答案:

答案 0 :(得分:0)

正如之前的一些评论中所提到的,运算符优先级将成为代码中的一个问题。

根据我对你的公式的理解,你会希望它读起来像这样;

Answer = (loanAmount * interestRate) / (1.0 - Math.Pow(1.0 / 1.0 + interestRate, loanPeriod));

这应该使您的优先顺序正确,并处理可能出现的任何浮点数学问题(请注意1 - > 1.0的更改

正如Ron在评论中所提到的,您可能还需要考虑从double更改为decimal以获得精确度。