我想用Java计算logX(Y)。但是我不明白为什么当我计算Math.log10(1000)时我得到3.0,但是当我计算double x = Math.log(1000)/ Math.log(10)时我得到2.9999999999999996。
到目前为止,我的努力是:
public class log_bases {
public static void main(String[] args) {
double k = logOfBase(10,1000);
System.out.println(k); // this outputs 2.99999999
System.out.println(Math.log10(1000)); // this outputs 3.0
double x = Math.log(1000) / Math.log(10);
System.out.println(x);
}
public static double logOfBase(int base, int num) {
return Math.log(num) / Math.log(base);
}
}
答案 0 :(得分:0)