`
typa01_kk
  • 浏览: 1204 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

素数

 
阅读更多
package com.tsxs.arithmetic;
/**
 * 计算素数.<br>
 * 素数(又叫质数):指大于1的自然数(0不是自然数),除了1和它本身外,不能被其他自然数整除的数.<br>
 * 合数:比1大但不是素数的数.<br>
 * 1和0既不是素数也不是合数.
 * 例如:2,3,5,7……<br>
 * 思路:<br>
 * 2到操作数的平方根范围中的所有数,不能整除此操作数,则此操作数为素数
 * */
public class PrimeNumber {
	public static void main(String[] args) {
		int count =0;
		for(int i = 2; i <= 100;i++){
			if(isPrimeNumber(i)){
				System.out.print(i+"\t");
				count++;
				if(count % 10 == 0){
					System.out.println();
				}
			}
		}
	}
	/**
	 * isPrimeNumber:判断是否为素数
	 * @param number 操作数
	 * @return boolean true为素数
	 * */
	static boolean isPrimeNumber(int number){
		//判断素数结果
		boolean isPrime = true;
		//求操作数的平方根
		double sqrt = Math.sqrt(number);
		for(int i = 2;i <= sqrt;i++){
			//求余为0,即2到操作数的平方根范围中,有数整除它,则为合数,否则为素数
			if(number % i == 0){
				isPrime = false;
			}
		}
		return isPrime;
	}
}

    计算结果,2~100,素数:

    2  3  5  7  11 13 17 19 23 29 
    31 37 41 43 47 53 59 61 67 71 
    73 79 83 89 97 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics