Récapitulatif - Nombres uniques
Fait partie de la section Logique et Flux du Journey C++ de Coddy — leçon 40 sur 56.
Défi
FacileCréez un programme qui lit une série d'entiers et utilise un std::set pour filtrer automatiquement les doublons, puis affiche le nombre de nombres uniques. Cela démontre l'avantage principal des ensembles (sets) : maintenir des collections d'éléments uniques sans vérification manuelle des doublons.
Les entrées suivantes seront fournies :
- Un entier
nreprésentant le nombre de chiffres qui seront saisis - Ensuite,
nentiers à traiter
Votre programme doit :
- Créer un
std::set<int>vide - Lire le nombre d'entiers qui seront saisis
- Utiliser une boucle pour lire chaque entier et l'insérer dans l'ensemble en utilisant la méthode
.insert() - Après avoir traité tous les nombres, utiliser la méthode
.size()pour obtenir le nombre d'éléments uniques - Afficher le résultat indiquant combien de nombres uniques ont été trouvés
Utilisez exactement le format de sortie suivant :
Unique numbers: [count]L'ensemble gérera automatiquement la suppression des doublons : lorsque vous essayez d'insérer un nombre qui existe déjà, l'ensemble ignore l'insertion du doublon. Cela signifie que vous n'avez pas besoin de vérifier manuellement les doublons ; insérez simplement tous les nombres et laissez l'ensemble maintenir l'unicité pour vous. La taille finale de l'ensemble représente exactement le nombre de chiffres distincts présents dans l'entrée.
Essayez vous-même
#include <iostream>
#include <set>
using namespace std;
int main() {
// Lire le nombre d'entiers
int n;
cin >> n;
// Créer un ensemble vide pour stocker les entiers uniques
set<int> uniqueNumbers;
// TODO: Écrivez votre code ici
// Utiliser une boucle pour lire n entiers et les insérer dans l'ensemble
// Afficher le résultat
cout << "Unique numbers: " << uniqueNumbers.size() << endl;
return 0;
}Toutes les leçons de Logique et Flux
1Pointeurs et mémoire
Qu'est-ce qu'un pointeur ?Opérateur d'adresseOpérateur de déréférencementPointeurs nulsPointeurs et tableauxMémoire dynamique avec 'new'Libérer la mémoire avec 'delete'Récapitulatif - Pratique des pointeurs2Vecteurs (Tableaux dynamiques)
Introduction à std::vectorCréer un vecteurAjouter des élémentsAccéder aux élémentsTaille d'un vecteurItérer avec une boucle ForBoucle For basée sur l'intervalleSupprimer des élémentsRécapitulatif - Opérations sur les vecteurs3Projet : Outil de liste de tâches
Présentation du projetAjouter une tâche6Ensembles (Éléments uniques)
Introduction à std::setCréer un Set et ajouter des élémentsVérifier la présence d'élémentsSupprimer des élémentsParcourir un SetRécapitulatif - Nombres uniques