我正在尝试编写一个方法,该方法采用基数k和值n到小数点后 2 位,然后在不使用任何 Java 的 Math.log 方法的情况下计算 n 的对数基数 k。这是我到目前为止所拥有的:
public static double log(double k, double n) {
double value = 0.0;
for(double i = 1; i > .001; i /= 10) {
while(!(Math.pow(k, value) >= n )) {
value += i;
}
}
return value;
}
当我尝试计算 5.0625 的日志基数 4 时出现问题,它返回 2.0,但应该返回 1.5。
我不知道为什么这不起作用。任何帮助表示赞赏。
不,这不是家庭作业,它是我试图解决的问题集的一部分。