>  기사  >  백엔드 개발  >  루프를 사용하여 소수를 찾는 방법: 수정된 접근 방식

루프를 사용하여 소수를 찾는 방법: 수정된 접근 방식

Linda Hamilton
Linda Hamilton원래의
2024-10-30 06:55:28330검색

How to Find Prime Numbers Using a Loop: A Corrected Approach

루프를 사용하여 소수 찾기: 수정된 접근 방식

당면 질문은 루프를 사용하여 소수를 찾는 방법을 찾는 것입니다. 제공된 코드에서 이를 시도하지만 오류가 발생합니다. 이 문서의 목적은 이러한 오류를 수정하고 작업을 수행하는 기능 코드 조각을 제시하는 것입니다.

수정된 코드:

아래 수정된 PHP 코드는 isPrime이라는 함수를 활용하여 다음을 수행합니다. 숫자가 소수인지 아닌지 확인:

<code class="php">function isPrime($num) {
    // Check if number is 1 (not prime)
    if ($num == 1)
        return false;

    // Check if number is 2 (prime)
    if ($num == 2)
        return true;

    // Rule out even numbers
    if ($num % 2 == 0)
        return false;

    // Check if any odd number up to the square root is a factor
    $limit = ceil(sqrt($num));
    for ($i = 3; $i <= $limit; $i += 2) {
        if ($num % $i == 0)
            return false;
    }

    return true;
}</code>

설명:

  • 함수는 숫자가 1 또는 2인 경우를 제거하는 것으로 시작합니다.
  • 2를 제외한 임의의 짝수로 숫자가 나누어지는지 확인합니다.
  • 그런 다음 주어진 숫자의 제곱근까지 홀수를 반복하여 나누어 떨어지는지 확인합니다.
  • 홀수가 인수인 경우 함수는 false를 반환하여 해당 숫자가 소수가 아님을 나타냅니다.
  • 함수가 인수를 찾지 못한 채 이러한 모든 확인을 완료하면 해당 숫자가 소수라고 결론을 내리고 다음을 반환합니다. true.

사용 예:

isPrime 함수를 사용하려면 확인하려는 숫자를 인수로 전달하기만 하면 됩니다. 예:

<code class="php">echo isPrime(11) ? "Prime" : "Not Prime"; // Output: Prime
echo isPrime(15) ? "Prime" : "Not Prime"; // Output: Not Prime</code>

결론:

수정된 코드는 루프 내에서 소수를 찾는 올바른 구현을 제공합니다. 소수가 아닌 숫자를 제거하고 소수를 정확하게 식별하기 위해 논리적 접근 방식을 사용합니다.

위 내용은 루프를 사용하여 소수를 찾는 방법: 수정된 접근 방식의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.