Java50道经典编程题:(二十七)素数判断 ——数学问题的转化

1.问题重述

题目:求100之内的素数

2.解析

素数,即质数,质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数。
在一般领域,对正整数n,如果用2到Math.sqrt(n)之间的所有整数去除,均无法整除,则n为质数。

3.解决问题

代码如下:

//题目:求100之内的素数
public class demo {
     
	public static void main(String[] args) {
     
		int sum = 0;
		for(int i = 2; i < 101; i++) {
     
			//素数的判断与打印
			if(Su(i) != 0) {
     
				sum++;
				System.out.println(Su(i));
			}
		}
		System.out.println("一百以内的素数有" + sum + "个");
	}
	
	//判断是否是素数,并返回值
	public static int Su(int a) {
     
		for(int i = 2; i <= Math.sqrt(a); i++) {
     
			if(a%i == 0) {
     
				return 0;
			}else {
     
			}
		}
		return a;
	}
}

你可能感兴趣的:(java50道经典编程题,java,素数)