【问题标题】:Java Using Arguments in a Complex FormulaJava 在复杂公式中使用参数
【发布时间】:2015-11-24 20:18:30
【问题描述】:

我是 Java 新手,我现在正在读一本关于它的书。书没有给我答案。我正在使用以下代码:

package loanpayments;

public class LoanPayments {

    public static void main(String[] args) {
        double years = Double.parseDouble(args[0]);
        double P = Double.parseDouble(args[1]);
        double r = Double.parseDouble(args[2]);

        double R = r / 100;

        double A = P*(Math.E*Math.exp(R*years));

        System.out.println(A);
    }

}

我正在使用以下值测试代码:

  • 年 = 3
  • P = 2340
  • r = 3.1

首先我必须将 r 除以 100 以获得正确的值(在这种情况下它变为 0.031)。新值 0.031 变成大写的 R。然后我用公式找到 A。

我得到了 ~6980.712 的错误输出,而输出应该是 ~2568.060。

我在想我把公式写错了,应该是这样的:

Pe^R(年)

在这种情况下,e 是欧拉数 (~2.71828)

如果有人能就如何修正公式或其他错误给我建议,我将不胜感激,谢谢。

【问题讨论】:

  • 附带说明:请遵守 Java 编码约定。变量不应该以大写字母开头。只有类型名称(类、接口、枚举)应该以大写字母开头。给变量起有意义的名字,比如ratePercentsrate,而不是rR,这样你的代码就会更易读。

标签: java formula calc


【解决方案1】:

不需要与另一个 e 相乘,因为 Math.exp() 已经是指数函数。

【讨论】:

  • 我没有乘以另一个 e,我不认为。
  • 哦,如果我用 A 除以 e,它会给我正确的答案。我在哪里乘以另一个 e?
  • @J.Doe:- 而不是(Math.E*Math.exp(R*years) 尝试(Math.exp(R*years)
  • @RahulTripathi 修复了它,嗯,也许不需要乘以 e?谢谢。
  • @J.Doe:- 不客气。如果对您有帮助,请接受答案!
猜你喜欢
  • 1970-01-01
  • 2013-09-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-04-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多