判断101-200之间有多少个素数,并输出所有素数用java表示

2024-11-03 16:16:43
推荐回答(3个)
回答1:

判断101-200之间有多少个素数,并输出所有素数。
1.程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,
  则表明此数不是素数,反之是素数。  

[java] view plaincopy
import java.util.*;  
public class PrimeTest  
{  
    public static void main(String[] args)  
    {  
        int x=0;  
        Vector v = new Vector();//集合,用来装所有的素数  
        for(int i=101;i<=200;i++)  
        {  
            boolean b=true;//标签为b为真  
            for(int j=2;j            {  
                if(i%j==0)//求余数是否为0  
                {  
                    b = false;//如果为0, 将标签设置为false  
                    break;  //可以整除就跳出这个循环  
                }  
            }  
            if(b==true)//  
            {  
                v.add(i);//将符合要求的i加到集合里  
                x++; // 素数个数加1  
            }  
        }  
        System.out.println("100到200中间有 "+x+" 个素数");  
        System.out.println("素数为:/n"+v);  
    }  
}

回答2:

private static final int START = 101;
private static final int END = 200;

public int prime(){
int sum = 0;

for(int i = STRAT;i <= END;i ++){
if(isPrime(i)){
sum ++;
System.out.println(i);
}

return sum;
}

private boolean isPrime(int number){
int max = (int)Math.sqrt(i);

for(int i = 2;i <= max;i ++)
if(number % i == 0)
return false;

return true;
}

回答3:

代码:
1234567891011121314151617181920public class Test {     public static final void main(String[] args) {        // 记录素数个数        // 素数概念:除了1和它本身以外不再有其他的除数整除        int num = 0;        for (int i = 101; i < 201; i++) {            for (int k = 2; k < i; k++) {                int remainder = i % k;                if (k == i - 1) {                    ++num;                    System.out.println("素数:" + i);                } else if (remainder == 0) {// 余数等于0说明有其他的除数整数,说明不是素数数                    break;                }            }        }        System.out.println(num + " 个");    }}