java 找出小于数字N的所有素数

代码如下所示:

package test3;

import java.util.Scanner;

/**
 * 找出小于数字N的所有素数(工程师)
 * @author saicy(博客 http://blog.csdn.net/sai739295732)
 */
public class test5 {
	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);
        int n = scan.nextInt();
		for(int i=1;i<=n;i++){
			if(isPrime(i)){
				System.out.println(i);
			}
		}
	}
	public static boolean isPrime(int a) {  
        boolean flag = true;  
        // 素数不小于2  质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数的数称为质数。
        if (a < 2) {
            return false;  
        } else {  
            for (int i = 2; i <= Math.sqrt(a); i++) {
            	// 若能被整除,则说明不是素数,返回false 
                if (a % i == 0) { 
                    flag = false;  
                    break;// 跳出循环  
                }  
            }  
        }  
        return flag;  
    }  
}

输入:6

输出结果:

java 找出小于数字N的所有素数_第1张图片

你可能感兴趣的:(算法,java,se)