当前位置:首页 » 编程语言 » java怎么判断素数

java怎么判断素数

发布时间: 2025-01-27 01:46:57

A. java 判断是不是素数

判断number是否是素数有这么几种方法:
(1)用2至number-1之间的所有数去整除number,如果有一个能被整除,说明number是非素数;除非所有的数都不能被整除,才说明number是素数。
(2)用2至number/2之间的所有数去整除number,如果有一个能被整除,说明number是非素数;除非所有的数都不能被整除,才说明number是素数。
(3)用2至number的平方根之间的所有数去整除number,如果有一个能被整除,说明number是非素数;除非所有的数都不能被整除,才说明number是素数。

这3种的方法的效率是逐渐提高的。下面列出了第3种方法的实现:
import java.util.Scanner;

public class Test2 {

public static void main(String[] args) {
int number; // 输入的数字

Scanner input = new Scanner(System.in);
System.out.println("请输入数字");
number = input.nextInt(); // 输入数字

if(isPrimeNumber(number)){
System.out.println(number + "是一个素数");
}
else{
System.out.println(number + "是一个非素数");
}
}

public static boolean isPrimeNumber(int num){
if(num < 2){
System.out.println("数据错误");
return false;
}

int k = (int)Math.sqrt(num); //num的平方根
int i;
for(i=2; i<=k; i++){ //依次用2..k之间的数去整除num,如果没有一个数能被整除,说明num是素数
if(num % i == 0){
break;
}
}
if(i > k){
return true;
}
return false;
}
}

如果对你的程序进行修改,也可这样:
public static void main(String[] args) {
int number;// 输入的数字
int j = 2;

Scanner input = new Scanner(System.in);
System.out.println("请输入数字");
number = input.nextInt();// 输入数字

for(j=2;j<number;j++){

if(number%j == 0) {

System.out.println("这不素数");
break;
}
}
if(j>=number)
System.out.println("这是素数");
}

热点内容
天龙八部自动挖矿脚本怎么写 发布:2025-07-15 07:42:01 浏览:645
本地编译器怎么运行 发布:2025-07-15 07:42:00 浏览:993
加密狗会坏吗 发布:2025-07-15 07:38:32 浏览:562
jdbc读取数据库 发布:2025-07-15 07:38:23 浏览:319
华为手机如何设置隐私密码锁 发布:2025-07-15 07:36:09 浏览:979
java怎么导入jar 发布:2025-07-15 07:22:02 浏览:394
雷蛇键盘配置文件怎么设置完整视频 发布:2025-07-15 07:20:31 浏览:409
存储器1b 发布:2025-07-15 07:09:03 浏览:975
雷电共享存储 发布:2025-07-15 07:09:02 浏览:59
威纶通反编译后字体变大了 发布:2025-07-15 07:08:56 浏览:713