Maison > développement back-end > C++ > Comment puis-je déterminer si un nombre est premier en C ?

Comment puis-je déterminer si un nombre est premier en C ?

Susan Sarandon
Libérer: 2025-01-04 22:49:41
original
984 Les gens l'ont consulté

How Can I Determine if a Number is Prime in C?

Détermination de la primalité d'un nombre en C

Vous cherchez une méthode en C pour discerner si un entier donné est premier ou non. Pour les non-initiés, un nombre premier est un entier supérieur à un qui n'est divisible que par lui-même et par un.

Algorithme

Avant de nous plonger dans le code C, décrivons le algorithme de vérification des nombres premiers :

  1. Saisissez un nombre.
  2. Itérer sur tous les entiers de 2 à la racine carrée du nombre saisi.
  3. Si l'un de ces nombres entiers divise le nombre saisi sans laisser de reste, le nombre saisi n'est pas premier.
  4. Si aucun diviseur sont trouvés, le nombre d'entrée est premier.

C Implémentation

Armé de notre algorithme, traduisons-le en C :

#include <stdio.h>

int isPrime(int number) {
    if (number <= 1) return 0; // 0 and 1 are not prime
    int i;
    for (i = 2; i * i <= number; i++) {
        if (number % i == 0) return 0;
    }
    return 1;
}

int main() {
    int num;
    printf("Enter an integer: ");
    scanf("%d", &num);
    printf("%d is %s\n", num, isPrime(num) ? "prime" : "not prime");
    return 0;
}
Copier après la connexion

Explication

  • Nous vérifions le bord cas où le nombre est inférieur ou égal à 1, car ils ne sont pas premiers.
  • A l'aide d'une boucle, on parcourir les diviseurs de 2 à la racine carrée du nombre saisi.
  • Si un diviseur donne un reste de 0, le nombre n'est pas premier.
  • Si aucun diviseur n'est trouvé, le nombre est déclaré premier.

Exemple d'utilisation

Entrée : 13
Sortie : 13 est premier

Entrée : 9
Sortie : 9 n'est pas premier

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 de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal