【问题标题】:Putting in the wrong math equation into the line of code?在代码行中输入错误的数学方程式?
【发布时间】:2020-01-28 08:16:24
【问题描述】:

我应该使用月利率公式:https://imgur.com/a/rQ3tbTs,其中 rate 是我写为 interestRate 的月利率,N 是我写为 amountOfPayments 的付款次数,LoanAmt 是金额贷款。

当我尝试将其放入我的程序中计算利息时,我最终得到的每月付款远远超过应有的金额。我认为我放入公式的代码行格式不正确。这是我的代码:

monthlyPayment = interestRate * pow(1 + interestRate, amountOfPayments) / pow(1 + interestRate, amountOfPayments) * borrowAmount

【问题讨论】:

  • 与其尝试在一行代码中完成所有事情,不如考虑将其分解为更多变量。 topbottom 可以先设置,然后它只是 (top/bot)*borrowAmount 括号是免费的...不要害怕使用太多
  • 我刚开始使用 C++,并不太了解。我不知道 top 和 bot 是什么意思。如果您只使用一行代码,您将如何格式化括号?
  • 您在源代码中遗漏了一组括号和一个术语。准确复制。
  • 因为你没有在你的问题中输入任何类型,所以我只举一个整数的例子int top = interestRate * pow(1 + interestRate, amountOfPayments)int bot = pow(1 + interestRate, amountOfPayments) -1
  • 您必须适当地更改变量的类型...整数当然会截断您的值

标签: c++ math


【解决方案1】:

分子和分母没有组织。

对不起,我写错了代码。

【讨论】:

  • 这只是现在给我 0.00 美元的结果。
  • 这正是他已经有了多余的括号和相同的缺失项。看看源公式。
  • 它仍然是错误的,事实上比以往任何时候都更糟。当(如果)你修复它时,请不要留下不正确的版本来混淆每个人。错误的答案没有任何用处或兴趣。
【解决方案2】:

假设double为数据类型,按照图中的公式,代码可以是这样的:

double common_rate_power = pow(1 + interestRate, amountOfPayments);
double monthlyPayment = (interestRate * common_rate_power * borrowAmount) / (common_rate_power - 1);
cout << monthlyPayment << endl;

请注意,我已将 pow 计算存储在另一个变量中,因为它在公式中使用了两次。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-03
    • 1970-01-01
    • 2021-09-17
    • 2015-06-15
    • 1970-01-01
    • 2011-05-12
    相关资源
    最近更新 更多