任何大于1且只有两个因数和1本身的整数都称为质数。除了这两个数字外,它没有正除数。例如:7 = 1×7
以下是查找数字是否为质数的算法-
取整数变量A。
将变量A除以(A-1至2)。
如果A可被任何值(A-1至2)整除,则它不是素数。
否则,它是首要的。
随后的Java程序从用户那里接受一个整数,查找给定的数字是否为质数,并输出下一个质数。
import java.util.Scanner;
public class NextNumberisPrime {
public static int isPrime(int num){
int prime = 1;
for(int i = 2; i < num; i++) {
if((num % i) == 0) {
prime = 0;
}
}
return num;
}
public static int nextPrime(int num) {
num++;
for (int i = 2; i < num; i++) {
if(num%i == 0) {
num++;
i=2;
} else {
continue;
}
}
return num;
}
public static void main(String args[]){
Scanner sc = new Scanner(System.in);
System.out.println("Enter a number ::");
int num = sc.nextInt();
int result = 0;
int prime = isPrime(num);
if (prime == 1) {
System.out.println(num+" is a prime number");
} else {
System.out.println(num+" is not a prime number");
}
System.out.println("Next prime number is: "+nextPrime(num));
}
}
输出结果
Enter a number ::
25
25 is not a prime number
Next prime number is: 29