【发布时间】:2019-02-23 11:28:32
【问题描述】:
我正在构建一些基本程序,作为练习不同编程技术的一种方式。我以为我写了一个程序来计算指数,但它不能正常工作。
如果我输入整数,它就可以正常工作,即。平方 (2,5) 但 (2,4.5) 不起作用。
public static double squared(double a, double b) {
double a1 = a;
double sq = 0;
while (b > 1) {
sq = a*a1;
a =sq;
b--;
}
return sq;
}
public static void main(String[] args) {
System.out.println(squared(2,2));
}
【问题讨论】:
-
我看到你在使用while循环,如果
b的输入是4.5,这个循环会“循环”多少次? -
谢谢您,先生。很明显,我:squared(facepalm, 10);
-
因为我看不出有什么问题,所以我复制它并尝试了它:完全没有问题。 squared(2,4,5) 给出应有的 32.0。你没想到它会做一个乘法,只执行到一半,然后突然停在中间什么的,是吗?