Programme C pour vérifier si un numéro est premier ou non

Dans cet exemple, vous apprendrez à vérifier si un entier saisi par l'utilisateur est un nombre premier ou non.

Pour comprendre cet exemple, vous devez avoir la connaissance des sujets de programmation C suivants:

  • C if… else Déclaration
  • C pour boucle
  • C pause et continuer

Un nombre premier est un entier positif qui n'est divisible que par 1lui-même. Par exemple: 2, 3, 5, 7, 11, 13, 17

Programme pour vérifier le numéro principal

 #include int main() ( int n, i, flag = 0; printf("Enter a positive integer: "); scanf("%d", &n); for (i = 2; i <= n / 2; ++i) ( // condition for non-prime if (n % i == 0) ( flag = 1; break; ) ) if (n == 1) ( printf("1 is neither prime nor composite."); ) else ( if (flag == 0) printf("%d is a prime number.", n); else printf("%d is not a prime number.", n); ) return 0; ) 

Production

 Entrez un entier positif: 29 29 est un nombre premier. 

Dans le programme, une boucle for est itérée de i = 2à i < n/2.

Dans chaque itération, si n est parfaitement divisible par i est vérifié en utilisant:

 if (n % i == 0) ( ) 

Si n est parfaitement divisible par i, n n'est pas un nombre premier. Dans ce cas, l'indicateur est mis à 1 et la boucle se termine à l'aide de l' breakinstruction.

Après la boucle, si n est un nombre premier, le drapeau sera toujours 0. Cependant, si n est un nombre non premier, le drapeau sera 1.

Visitez cette page pour savoir comment imprimer tous les nombres premiers entre deux intervalles.

Articles intéressants...