Resumen - Números únicos
Parte de la sección Lógica y Flujo del Journey de C++ de Coddy — lección 40 de 56.
Desafío
FácilCrea un programa que lea una serie de números enteros y utilice un std::set para filtrar automáticamente los duplicados, y luego imprima la cantidad de números únicos. Esto demuestra la ventaja principal de los sets: mantener colecciones de elementos únicos sin necesidad de comprobar manualmente si hay duplicados.
Se proporcionarán las siguientes entradas:
- Un número entero
nque representa cuántos números se introducirán - Luego,
nnúmeros enteros para ser procesados
Tu programa debe:
- Crear un
std::set<int>vacío - Leer la cantidad de números enteros que se introducirán
- Usar un bucle para leer cada número entero e insertarlo en el set utilizando el método
.insert() - Después de procesar todos los números, usar el método
.size()para obtener la cantidad de números únicos - Imprimir el resultado mostrando cuántos números únicos se encontraron
Utiliza el siguiente formato de salida exacto:
Unique numbers: [count]El set gestionará automáticamente la eliminación de duplicados: cuando intentes insertar un número que ya existe, el set ignorará la inserción duplicada. Esto significa que no necesitas comprobar manualmente si hay duplicados; simplemente inserta todos los números y deja que el set mantenga la unicidad por ti. El tamaño final del set representa exactamente cuántos números distintos había en la entrada.
Pruébalo tú mismo
#include <iostream>
#include <set>
using namespace std;
int main() {
// Leer el número de enteros
int n;
cin >> n;
// Crear un conjunto vacío para almacenar enteros únicos
set<int> uniqueNumbers;
// TODO: Escribe tu código aquí
// Usa un bucle para leer n enteros e insertarlos en el conjunto
// Mostrar el resultado
cout << "Unique numbers: " << uniqueNumbers.size() << endl;
return 0;
}Todas las lecciones de Lógica y Flujo
1Punteros y memoria
¿Qué es un puntero?Operador de direcciónOperador de desreferenciaPunteros nulosPunteros y arraysMemoria dinámica con 'new'Liberar memoria con 'delete'Resumen: Práctica de punteros2Vectores (Arrays dinámicos)
Introducción a std::vectorCreación de un VectorAgregar elementosAcceder a los elementosTamaño del VectorIterar con un bucle ForBucle For basado en rangosEliminar elementosResumen - Operaciones con Vectores5Proyecto: Herramienta de inventario
Configuración del proyectoAgregar y actualizar artículos3Proyecto: Herramienta de lista de tareas
Descripción general del proyectoAñadir una tarea6Conjuntos (Elementos únicos)
Introducción a std::setCrear conjunto y añadir elementosComprobar elementosEliminar elementosIterar sobre un conjuntoResumen - Números únicos