求质数
/*
- 质数(素数)
- 一个大于一的自然数中除了1和自身外不能被其它自然数(不包括0)整除的数
- 2,3,5,7,11,13,17,19,23.。。。。。。
- 1.判断n是否为质数
- 从2到n的开方的+1范围内,寻找能把n整除的值
- 找到,n不是质数
- 找不到,n是质数
*/
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
System.out.println("输入一个整数:");
int n=input.nextInt();
if(isPrime(n)) {
System.out.println("是质数");
}else {
System.out.println("不是质数");
}
}
private static boolean isPrime(int n) {
if(n==2) {
return true;
}if(n<2) {
return false;
}
//n卡方+1
double max=Math.sqrt(n)+1;
//在2到max范围,找到能把n整除得数
for(int i=2;i<max;i++) {
if(n%i==0) {
//不是质数
return false;
}
}
return true;//是质数
}