📌  相关文章
📜  comment savoir si un nombre est Premier C++ (1)

📅  最后修改于: 2023-12-03 14:59:59.948000             🧑  作者: Mango

Comment savoir si un nombre est Premier en C++

Introduction

Dans ce tutoriel, nous allons apprendre comment vérifier si un nombre donné est premier en utilisant le langage de programmation C++. Les nombres premiers sont des entiers qui sont strictement supérieurs à 1 et qui ne sont divisibles que par 1 et par eux-mêmes.

Algorithme

L'algorithme de vérification de primalité le plus simple est de tester si un nombre donné est divisible par tous les entiers de 2 à sa racine carrée. Si aucun de ces entiers ne divise le nombre, alors il est premier.

Code en C++
#include <iostream>
#include <cmath>

bool estPremier(int nombre) {
    // Vérifier si le nombre est inférieur ou égal à 1
    if (nombre <= 1) {
        return false;
    }

    // Vérifier si le nombre est divisible par un entier de 2 à sa racine carrée
    for (int i = 2; i <= sqrt(nombre); i++) {
        if (nombre % i == 0) {
            return false;
        }
    }

    return true;
}

int main() {
    int nombre;
    std::cout << "Entrez un nombre entier : ";
    std::cin >> nombre;
    
    if (estPremier(nombre)) {
        std::cout << nombre << " est un nombre premier." << std::endl;
    } else {
        std::cout << nombre << " n'est pas un nombre premier." << std::endl;
    }

    return 0;
}
Explication du code
  1. La fonction estPremier prend un nombre en entrée et renvoie true s'il est premier, sinon elle renvoie false.
  2. Dans cette fonction, nous vérifions d'abord si le nombre est inférieur ou égal à 1, car les nombres premiers sont strictement supérieurs à 1.
  3. Ensuite, nous effectuons une boucle de 2 à la racine carrée du nombre. Nous utilisons la fonction sqrt de la bibliothèque <cmath> pour calculer la racine carrée.
  4. À chaque itération, nous vérifions si le nombre est divisible par l'entier actuel. Si c'est le cas, cela signifie qu'il n'est pas premier et nous renvoyons false.
  5. Si aucun des entiers ne divise le nombre, alors la fonction renvoie true, ce qui signifie que le nombre est premier.
  6. Dans main, nous demandons à l'utilisateur d'entrer un nombre entier, puis nous appelons la fonction estPremier pour vérifier sa primalité. Le résultat est ensuite affiché à l'écran.

N'hésitez pas à expérimenter avec différents nombres pour tester le programme et comprendre le concept des nombres premiers.