我正在编写一个关于查找素数的程序,当我在'else if'中添加时,我遇到了语法错误'语法错误,插入}到完成阻止'。
我在星号中标记了我收到错误的地方。
import java.math.*;
public class FindThePrime {
public static void main(String[] args) {
int x = 2;
int nextPrime = 1;
for (int i = 1; i <= 10; ++i){
int count = 0;
while (nextPrime > x);{
if (nextPrime % x == 0);{
++nextPrime;
x = 2;
++count;
}
if (nextPrime < x); {
++x;
}
***}***
}
else if{
}
}
}
我读了同样问题的其他报告,没有任何帮助。我算了{&amp;他们达到了偶数。
有什么建议吗?
p.s。:这个项目远未完成,所以原谅它的粗糙。另外,不要告诉我如何得到我想要的结果,我不想破坏挑战!
答案 0 :(得分:0)
你的其他如果需要直接在if之后。现在你正在说{do stuff} elseif {做其他东西}
所以试试
if (nextPrime < x) {
++x;
}
else if {
}
如果您使用eclipse,也可以使用CTRL-SHIFT-F格式化代码(如果没有错误)。这可以真正帮助理清嵌套问题。
最重要的是你有一个;过了一会儿和if。一个 ;表示该命令不包含{} s,因此您要删除;
例如while(1 == 1);将永远循环。
答案 1 :(得分:0)
import java.math。*;
公共课FindThePrime {
public static void main(String[] args) {
int x = 2;
int nextPrime = 1;
for (int i = 1; i <= 10; ++i)
{
int count = 0;
while (nextPrime > x)
{
if (nextPrime % x == 0)
{
++nextPrime;
x = 2;
++count;
}
if (nextPrime < x) {
++x;
}
else {
System.out.println("foo");
}
} //while loop
}//for loop
}//main
}