저는 이것이 소수 나 소수를 찾기위한 최선의 방법이 아니라는 것을 알고 있습니다. 그러나, 169가 소수로 간주되는 이유를 찾지 못하는 것 같습니다. (더 작은 숫자의 경우에는 제가 걱정할만큼 괜찮습니다).이 코드의 문제점은 무엇입니까? Prime Numbers
public static int checkPrime(int num, int i)
{
if (i == num)
return 1;
else
{
if (num % i == 0)
return 0;
else
checkPrime(num, i+1);
}
return 1;
}
메인 클래스 :
System.out.println("Type a number");
number = reader.nextInt();
if ((number % 10) % 2 == 0)
result = 0;
else
result = checkPrime(number, 2);
if (result == 1 || number == 2)
System.out.println(number + " is a prime number");
else
System.out.println(number + " is NOT a prime number");
왜 'bool'대신 'int'를 반환합니까? – CodesInChaos
또한 재귀 호출의 반환 값을 무시합니다. – CodesInChaos
소수를 소수점으로 검사하는 경우 왜 다른 사람을 확인합니까? 'if (number % divider == 0) ... '라고 말하십시오. – MikkoP