有关JAVA中素数的问题,帮帮忙看看问题出在哪,感激不尽

来源:百度知道 编辑:UC知道 时间:2024/09/20 22:28:22
class Number100{
public static void main(String[] args){
int p,m,k;
int n=0;
for(p=2;p<=100;p++)
{
boolean temp=false;
k=(int)Math.sqrt(q);
for(m=2;m<k+1;m++)
{
if(q%m==0)temp==true;
if(temp)
{
n++;
if(n%10==0)
System.out.println(p);
else
System.out.print("\t"+p);
}
}
}
}
能正常运行但是结果错误,还请指正,谢谢谢谢!!
并且结果中出现重复数字,不解。。

class Number100{
public static void main(String[] args){
int p,m,k;
int n=0;
for(p=2;p<=100;p++) {
boolean temp=false;
k=(int)Math.sqrt(p);
for(m=2;m<k+1;m++) {
if(p%m==0)temp=true; // 赋值是一个等号而不是两个
}
if(temp) { // 这个判断要放循环外面
n++;
if(n%10==0) System.out.println(p);
else System.out.print("\t"+p);
}
}
}

还有那些q是怎么来的,都改成p才对啊