我的代码出了什么问题?当正确答案显然为6,8时,它打印2,2
public static void main(String[] args) {
int a = 1;
int b = 1;
int answer = 0;
int j = 4;
while (j == 4) {
for (a = 1; a <= 10; a++) {
for (b = 1; b <= 10; b++) {
answer = a * a + b * b;
if (answer == 100) {
j = 10;
}
}
}
}
System.out.println(a + " " + b);
}
答案 0 :(得分:6)
if(answer == 100);
在你的if之后你有一个额外的分号。
这将导致它执行j = 10;
,无论answer
等于
答案 1 :(得分:0)
您正在同时递增a和b。在您的代码中,这两个数字将始终相等。此外,退出循环时,您不会测试匹配项。