이 프로그램을 알아 내려고 힘듭니다. 입력 된 숫자가 소수인지 알아내는 방법을 만들었지 만 이제는 양의 정수를 매개 변수로 사용하여 [0, num-1] 범위의 임의의 소수를 반환하는 메서드를 작성해야합니다. ]. isPrime 메서드를 올바르게 사용하고 있는지 확실하지 않습니다. 또한이 메서드를 주에서 호출하여 테스트해야하지만 그 방법도 잘 모르겠습니다. 여기 내 코드가 있습니다 :Random Prime 다른 메서드를 호출하여 메서드를
public static boolean isPrime(int num)
{
for(int i = 2; i<= num-1;i++)
{
if (num % i == 0)
{
return false;
}
}
return true;
}
public static int randomPrime(int num)
{
Random r = new Random();
int x = r.nextInt(num);
for(int i = 0; i <= x; i++)
{
if(!isPrime(x))
{
num = x;
}
}
return x;
}
이야 'num = x'을 할당하면 그 정보로 아무 일도하지 않게됩니다. 대신, 0과 num-1 사이의 모든 소수의리스트를 먼저 만들고 나서, "the"random prime을 반환하려면 0과 list.size() - 1 (포함하는) 사이의 무작위 인덱스를 선택하고 리턴리스트 .get (that_index) –