Question #4598
Proposée par Answiki
le 07/12/2021 à 20:42:09 UTC
Comment tester si un nombre est premier en C ?
Merged questions
Answer
Submitted by Answiki
on 12/07/2021 at 08:42:32 PM UTC
La fonction suivante (optimisée pour la rapidité) permet de retourner 1 si le paramètre N
est un nombre premier, 0 sinon :
unsigned char isPrime(unsigned int N)
{
if(N < 2) return 0;
if(N == 2) return 1;
if(N % 2 == 0) return 0;
for(int i=3; (i*i)<=N; i+=2)
if(N % i == 0 ) return 0;
return 1;
}
Answer by Answiki on 12/07/2021 at 08:42:32 PM
La fonction suivante (optimisée pour la rapidité) permet de retourner 1 si le paramètre N
est un nombre premier, 0 sinon :
unsigned char isPrime(unsigned int N)
{
if(N < 2) return 0;
if(N == 2) return 1;
if(N % 2 == 0) return 0;
for(int i=3; (i*i)<=N; i+=2)
if(N % i == 0 ) return 0;
return 1;
}
Question by Answiki 12/07/2021 at 08:42:09 PM
Comment tester si un nombre est premier en C ?
# | ID | Query | URL | Count |
---|
Icons proudly provided by Friconix.