java - Math.pow() 正在返回一个意外的结果
问题描述
Math.pow()
正在为某些输入返回意外结果。
例如 - 下面是我找到 m 的第 n 个根的代码
public class FindRoot {
static int m,n;
public static void main(String[] args) {
findRoot(m,n);
}
private static void findRoot(int m, int n) {
double tempDouble = Math.pow(m, 1.0/n);
System.out.println(tempDouble);
}
}
现在,当我通过 m = 9 和 n = 2 时,它给出了预期的结果,即 3.0,但如果我通过 m = 1000 和 n = 3,那么我预期为 10.0,但它给出的是 9.999999999999998,即意想不到的结果。
解决方案
推荐阅读
- python - 如何使用 PySpark 用组的聚合填充空值
- html - 我正在尝试使用 PERL/CGI 创建一个表单,并且我想在同一个 CGI 文件中处理该表单中引入的数据
- php - 每次都出现 XAMPP 访问禁止错误
- c# - asp:ListItem 项在 CheckBoxList 中自动检查
- java - 在开关中使用用户输入
- c - 如何编写继续程序;使用 C
- reactjs - 如何防止盖茨比图像在每次重新加载时模糊徽标?
- artificial-intelligence - 如何将 UNO 建模为 POMDP
- java - 如何制作一个在 main 方法中保留总计的函数?
- github - 将更改从 github 移动到 tfs 的最简单且对新手友好的方法是什么?