Vérifier la primalité d'un tableau

C++Beginner
Pratiquer maintenant

Introduction

Dans ce laboratoire, nous allons apprendre à trouver le nombre de nombres premiers dans un tableau en C++. Nous allons écrire un programme pour vérifier si un nombre est premier ou non et parcourir chaque élément d'un tableau pour vérifier s'il est premier. Si un élément est premier, nous allons incrémenter un compteur.

Configuration du fichier

Créez un fichier nommé main.cpp dans le répertoire ~/project à l'aide de la commande suivante :

touch ~/project/main.cpp

Ouvrez le fichier à l'aide d'un éditeur de texte en ligne de commande et entrez le code suivant :

#include <iostream>
using namespace std;

int main() {
    return 0;
}

Définition de la fonction checkPrime

Nous définissons une fonction appelée checkPrime qui prend un entier en entrée et renvoie 0 ou 1 selon qu'il est premier ou non. Nous allons utiliser cette fonction pour vérifier si chaque élément du tableau est premier. Ajoutez le code suivant au fichier main.cpp :

// Function to check if number is prime
int checkPrime(int num){
    if (num <= 1){
        return 0;
    }
    // Check from 2 to half of num
    for (int j = 2; j <= num/2; j++){
        if (num % j == 0){
            return 0;
        }
    }
    return 1;
}

Compter le nombre de nombres premiers dans le tableau

Nous créons un tableau d'entiers et comptons le nombre de nombres premiers en utilisant la fonction checkPrime pour chaque élément du tableau. Si un élément est premier, nous incrémentons un compteur. Ajoutez le code suivant au fichier main.cpp :

int main(){
    int arr[] = { 1, 3, 5, 4, 8, 13, 11 };
    int n = 7;
    int count = 0;
    int isprime = 0;
    // Traverse through each element of array and check if it is a prime
    for(int i = 0; i < n; i++){
        isprime = checkPrime(arr[i]);
        if(isprime == 1){
            count++;
        }
    }
    cout << "Count of number of primes in array: " << count << endl;
    return 0;
}

Compiler et exécuter le programme

Compilez le programme à l'aide de la commande suivante :

g++ main.cpp -o main

Exécutez le programme à l'aide de la commande suivante :

./main

Voir la sortie

La sortie devrait être la suivante :

Count of number of primes in array: 4

Résumé

Dans ce laboratoire, nous avons appris à compter le nombre de nombres premiers dans un tableau en C++. Nous avons écrit une fonction pour vérifier si un nombre est premier et parcouru chaque élément du tableau, incrémentant un compteur pour chaque élément premier.