本篇文章给大家分享的是有关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是否为素数的方法,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。