Java方法来检查素数并找到下一个素数
java.math.BigInteger类为Java的所有原始整数运算符以及java.lang.Math中的所有相关方法提供操作类似物。它还提供了验证数字是否为质数的方法,以及找到下一个可能的质数的方法。
isProbablePrime()-此方法接受表示确定性的整数值,并验证当前对象表示的值是否为质数。它返回一个布尔值-
如果给定的数字是质数,则为true。
如果给定的数字不是素数,则为false。
示例
import java.math.BigInteger; import java.util.Scanner; public class isProbablePrimeExample { public static void main(String args[]) { Scanner sc = new Scanner(System.in); System.out.println("Enter a number :"); long num = sc.nextLong(); int result = 0; BigInteger bigInt = new BigInteger(String.valueOf(num)); boolean prime = bigInt.isProbablePrime(1); if (prime) { System.out.println(num+" is a prime number"); } else { System.out.println(num+" is not a prime number"); } } }
输出1
Enter a number : 25 25 is not a prime number
输出2
Enter a number : 19 19 is a prime number
nextProbablePrime()-此方法返回大于当前BigInteger的下一个第一个素数(整数)。
示例
import java.math.BigInteger; import java.util.Scanner; public class nextProbablePrimeExample { public static void main(String args[]) { Scanner sc = new Scanner(System.in); System.out.println("Enter a number :"); long num = sc.nextLong(); int result = 0; BigInteger bigInt = new BigInteger(String.valueOf(num)); BigInteger prime = bigInt.nextProbablePrime(); System.out.println("Next prime number : "+prime.intValue()); } }
输出结果
Enter a number : 25 Next prime number : 29