我的查找阿姆斯特朗号码的java程序不起作用
以下是我的节目:
import java.io.*;
public class armstrongno {
int num;
int sum;
int cube;
int dig;
int temp;
public void method() throws IOException {
dig = 0;
cube = 0;
sum = 0;
num = 0;
temp = 0;
BufferedReader obj = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Enter number");
num = Integer.parseInt(obj.readLine());
temp = num;
while (temp == 0) {
dig = temp % 10;
cube = dig * dig * dig;
sum = sum + cube;
temp = temp / 10;
}
if (sum == num) {
System.out.println("Armstrong number");
} else {
System.out.println("Not an Armstrong number");
}
}
}
# 1 楼答案
所以千万不要进去。所以你得到了
else
部分的输出按如下方式更改代码
# 2 楼答案
while(temp==0)
如果
temp
不为零,这将永远不会执行你可能想做:
while(temp > 0)
有时可以挽救你生命的一个技巧:使用调试器