展开全部
代码两个疑问
第一
for(int i=3;i<=Math.sqrt(n);i+=2)
62616964757a686964616fe58685e5aeb931333337613766{
isprime = false;
}
这段代码里需要改成
for(int i=3;i<=Math.sqrt(n);i++)
{
if (n % i == 0 && i != n)
{
isprime = false;
}
}
第二 你的scanner完全没用上//修改后的代码, 从2开始,往后50个素数
public class T {
public static boolean isprime(int n)
{
boolean isprime=true;
if(n<2 || n%2==0 && n!=2)
{
isprime = false;
}
else
{
for(int i=3;i<=Math.sqrt(n);i++)
{
if (n % i == 0 && i != n)
{
isprime = false;
}
}
}
return isprime;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
int count=0;
for(int n=1;count<50;n++)
{
if(isprime(n)==true)
{
count++;
System.out.print(n+" ");
}
}
}
}