输出1-100之间的所有质数

质数定义:在大于1的自然数中,除了1和它本身以外不再有其他因数,这样的数称为质数。

也就是说质数只能被1或者其本身两者整除。

  思路:要判断n是否是质数,可以用n除于不大于n的整数(即n%m),当且仅当(n%m==0)&&(n==m)时,n为质数。

方法一:

  

public static void prime_1() {
        
        for(int i=2;i<100;i++){
            loop:for(int j=2;j<=i;j++){//给内循环定义一个标签
                if(i%j==0){
                    if(i==j){//如果i!=j,说明i还能被其他的数整除,i不是质数
                        System.out.println(i);
                    }else{
                        break loop;//跳出内循环
                    }
                }
            }
        }
    }

 

方法二:

  

public static void prime_2() {
        int j;
        for(int i=2;i<100;i++){
            
            j=2;
            while(i%j!=0){
                j++;
            }
            if(i==j){//如果i!=j,说明i还能被其他的数整除,i不是质数
                System.out.println(i);
            }
        }
    }

 

如果想要求所以质数的和,只要在循环里面定义int sum=0;每当判断是质数时,sum+=i,这样就可以求出所有质数的和了。

 

posted @ 2017-08-06 10:51  小蘇  阅读(2825)  评论(0编辑  收藏  举报