Trouver des nombres premiers avec une boucle : une approche révisée
La question en question cherche un moyen de trouver des nombres premiers à l'aide d'une boucle. Le code fourni tente de le faire mais rencontre des erreurs. Cet article vise à corriger ces erreurs et à présenter un extrait de code fonctionnel qui accomplit la tâche.
Code révisé :
Le code PHP corrigé ci-dessous utilise une fonction appelée isPrime pour déterminer si un nombre est premier ou non :
<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>
Explication :
Exemple d'utilisation :
Pour utiliser la fonction isPrime, transmettez simplement le nombre que vous souhaitez vérifier comme argument. Par exemple :
<code class="php">echo isPrime(11) ? "Prime" : "Not Prime"; // Output: Prime echo isPrime(15) ? "Prime" : "Not Prime"; // Output: Not Prime</code>
Conclusion :
Le code révisé fournit une implémentation correcte de la recherche de nombres premiers dans une boucle. Il utilise une approche logique pour éliminer les nombres non premiers et identifie avec précision les nombres premiers.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!