189 8069 5689

java怎么判断number是否为素数

本篇文章给大家分享的是有关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;
    }
}

以上就是java判断number是否为素数的方法,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注创新互联行业资讯频道。


当前名称:java怎么判断number是否为素数
文章起源:http://jkwzsj.com/article/jscdcd.html

其他资讯