java - Java 中的素数(假时返回下一个素数)
问题描述
public class PrimeNumbers {
public static void main(String[] args) {
int num = 6;
boolean isPrime = true;
for (int i = 2; i <= num - i; i++) {
if (num % i == 0) {
isPrime = false;
break;
}
}
int nextPrime = num++;
{
while (isPrime = false) {
}
if (isPrime)
System.out.println("Is a prime number");
else
System.out.println("Is not a prime number" + "the next prime number is" + nextPrime(num));
}
}
}
我曾尝试用 Java 编写代码以找到下一个素数,而先前返回的结果为假,但我对如何继续使用“while”代码感到非常困惑。这是我到目前为止所尝试的:
解决方案
为了找到一个素数,你基本上需要一个嵌套循环。所以我建议将你的 for 循环放在 while 循环中。或者你可以在外面有一个 do-while 循环,它会一直循环,直到你找到一个素数。
您的代码应如下所示:
public class PrimeNumbers {
public static boolean check_prime(int num){
for (int i = 2; i <= num-i ; i++) {
if (num % i == 0) {
return false;
}
}
return true;
}
public static void main(String[] args){
int num = 6;
boolean isPrime= true;
if(!check_prime(6)){
int nextPrime = num;
do{
nextPrime++;
if (check_prime(nextPrime)) {
isPrime = true;
break;
}else{
isPrime = false;
}
}while(!isPrime);
}
if (isPrime)
System.out.println("Is a prime number");
else
System.out.println("Is not a prime number" +"the next prime number is" + nextPrime);
}}}
推荐阅读
- python-3.x - 使用 Python 3 和 re.sub 将图像转换为 Base64 字符串,然后用循环中的编码字符串替换每个匹配的图像路径
- java - Maven 部署到 Github 包 UNAUTHORIZED 401
- python - python中的煎饼排序,并为空max()错误消息
- react-native-sqlite-storage - 我们如何将 RNSqlite db 存储在外部存储中,例如谷歌驱动器而不是内部存储?
- node.js - 如何从猫鼬的对象数组中删除一个对象?
- pine-script - 基于符号和整数的字符串数组的时间戳输入
- git - git merge 一个一个提交
- python - 如何返回 pandas 绘图方法的 numpy.ndarray?
- r - ggplot 强制轴从 0 开始
- flutter - 颤振错误:参数类型“列表”
>' 不能分配给参数类型 'List '