我想创建一个程序,要求用户使用数组输入 5 个整数并确定输入的所有素数。但我很难做到。似乎是什么问题?我为此使用 JCreator。
import java.util.Scanner;
public class PrimeNumbers{
public static void main (String[] args){
int[] array = new int [5];
Scanner in = new Scanner (System.in);
System.out.println("Enter the elements of the array: ");
for(int i=0; i<5; i++)
{
array[i] = in.nextInt();
}
//loop through the numbers one by one
for(int i=0; i<array.length; i++){
boolean isPrime = true;
//check to see if the numbers are prime
for (int j=2; j<array[i]; j++){
if(array[i]%j==0){
isPrime = false;
break;
}
}
//print the number
if(isPrime)
System.out.println(array[i] + " are the prime numbers in the array ");
}
}
}
原文由 Programmer19 发布,翻译遵循 CC BY-SA 4.0 许可协议
您正在检查循环计数器,而不是数组中的值。尝试类似的东西
我没有测试过这个。
更新
要打印出结果,可以在找到时打印每个结果,或者将质数复制到输出数组中,然后在完成检查后打印出来。详细信息将取决于您使用的语言。
请注意,您没有使用非常有效的检测算法;谷歌一个更好的。