java - 如何将双打提升到力量
问题描述
无法弄清楚如何将公式提高到幂。我也在java中导入了java.lang.Math。我只是不断收到“数学”上的 Sytax 错误删除此标记,并且无法在原始数据类型双精度错误上调用 pow(double)
这是假设贷款 30 年的公式
年金系数 = (0.003125*(1+0.003125)^360)/(((1+0.003125)^360)-1) 360 是 30 年时间 12 个月获得每月付款
import java.util.Scanner;
import java.lang.Math;
public class HW3Method {
public static void main(String[] args) {
// main method for user inputs
Scanner info = new Scanner(System.in);
System.out.println("Enter the starting annual rate as a percent (n.nnn)");
double startRate = info.nextDouble();
System.out.println("Enter the ending annual rate as a percent (n.nnn)");
double endRate = info.nextDouble();
System.out.println("Enter the annual intrest rate increments as a percent (n.nnn)");
double rateIncrease = info.nextDouble();
System.out.println("Enter the first term in years for calculating payments");
double firstTerm = info.nextDouble();
System.out.println("Enter the last term in years for calculating payments");
double lastTerm = info.nextDouble();
System.out.println("Enter the term increment in years");
int termIncrement = info.nextInt();
System.out.println("Enter the loan amount");
double loanAmount = info.nextDouble();
double mtp = firstTerm * 12;
}
public double calcAnnuity(double mtp ) {
double annuityFactor = (0.003125*(1+0.003125)Math.pow(mtp));
return annuityFactor;
}
}
解决方案
解释
您使用的方法Math.pow
错误。它需要两个参数,基数和指数。你写了:
0.003125 * (1 + 0.003125) Math.pow(mtp)
但是你需要写:
0.003125 * Math.pow(1.0 + 0.003125, mtp)
笔记
请注意,1.0 + 0.003125
可以简化为 just 1.003125
,因此:
0.003125 * Math.pow(1.003125, mtp)
更好的是将该神奇数字存储为常数,然后您只需要更改一个变量而不是很多:
private static final int FACTOR = 0.003125;
然后使用该常量:
FACTOR * Math.pow(1.0 + FACTOR, mtp)
文档
来自Math.pow的官方文档:
public static double pow(double a, double b)
返回第一个参数的第二个参数次幂的值。特别案例: [...]
推荐阅读
- ios - 如何处理从另一个应用程序共享到我自己的 iOS 应用程序的文件?
- javascript - 如何使用 Javascript 滚动到页面底部但使用 selenium c# 有一些延迟
- java - 如何将一个数组的元素插入第二个数组?
- javascript - 从反应项目中分离firebase实时数据库
- next.js - 在带有 ISR 和 SWR 的 nextjs 应用程序中使用反冲设置初始状态
- javascript - 直接在 JSX 中样式,当值改变时改变
- python - 检查时间戳列值是否在每个组的数据范围内
- wix - WiX 工具集 - 在自定义操作中运行 cmd 的问题
- php - 如何使用 PHP 用一个 mysqli_query 查询更改多个表?
- elasticsearch - 通过 elasticsearch 搜索字符串关键字