Maison >développement back-end >Problème PHP >Comment déterminer si un nombre est premier en php ?

Comment déterminer si un nombre est premier en php ?

青灯夜游
青灯夜游original
2019-10-12 17:52:085673parcourir

Les nombres premiers sont également appelés nombres premiers. Un nombre naturel supérieur à 1 qui ne peut être divisé par d’autres nombres naturels que 1 et lui-même est appelé nombre premier, sinon il est appelé nombre composé ; (Remarque : 1 n'est pas un nombre premier.) Alors, comment PHP détermine-t-il si un nombre est premier ? L’article suivant vous le présentera.

Comment déterminer si un nombre est premier en php ?

Nous allons maintenant présenter Quelles sont les trois façons de déterminer les nombres premiers en PHP ?

Méthode 1 :

Méthode de base, - méthode de comptage.

$num = 7;$n = 0; //用于记录能被整除的个数 -- 计数
for($i = 1;$i <= $num; ++$i){    
    if($num % $i == 0){        
       $n++;
    }
}
if($n == 2){    
   echo "$num 是素数";
}else{    
   echo "$num 不是素数";
}

Méthode 2 :

C'est-à-dire que lorsqu'un nombre est égal au produit de deux nombres, l'un des nombres doit être inférieur à la moitié du nombre. Utilisez break ; tant que l'un des nombres peut être divisé, la boucle se terminera immédiatement. Cela réduit le nombre de boucles et accélère le processus.

$num = 5;$flag = true;
for($i = 2;$i <= $num/2;++$i)
{    if($num % $i == 0)
    {        $flag = false;        break;
    }
}if($flag)
{    echo "$num 是素数";
}else{    echo "$num 不是素数";
}

Méthode 3 :

Idem que ci-dessus, lorsque le produit de deux nombres est égal à un nombre, alors l'un des nombres doit être inférieur à la racine carrée du numéro.

$num = 4;for($i = 2;$i<$num;++$i){    
     if($num % $i == 0){        
         echo "$num 不是素数";        
         break;
    }    
    if($i >= sqrt($num)){        
       echo "$num 是素数";        
       break;
    }
}

Pour plus de connaissances sur PHP, veuillez visiter : Site Web PHP chinois !

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn