Menu
Coddy logo textTech

Iterar con un bucle For

Parte de la sección Lógica y Flujo del Journey de C++ de Coddy — lección 14 de 56.

Ahora que ya sabes cómo acceder a elementos individuales y comprobar el tamaño de un vector, aprendamos a procesar cada elemento sistemáticamente utilizando un bucle for tradicional. Este enfoque combina el método .size() con el acceso basado en índices para visitar cada elemento en secuencia.

Un bucle for tradicional utiliza una variable de índice que comienza en 0 y se incrementa hasta que alcanza el tamaño del vector:

std::vector<std::string> names = {"Alice", "Bob", "Charlie"};

for (int i = 0; i < names.size(); i++) {
    std::cout << names[i] << std::endl;
}

En este ejemplo, la condición del bucle i < names.size() asegura que no sobrepasemos los límites del vector, mientras que names[i] accede a cada elemento utilizando el índice actual. El bucle imprimirá cada nombre en una línea separada.

Este patrón es fundamental para procesar colecciones de datos. La variable de índice i te brinda un control preciso sobre con qué elemento estás trabajando, lo que lo hace útil cuando necesitas conocer la posición de cada elemento o cuando deseas modificar elementos durante la iteración.

challenge icon

Desafío

Fácil

Crea un programa que utilice un bucle for tradicional para iterar a través de un vector de nombres de productos y los muestre en un formato de lista numerada.

Se proporcionarán las siguientes entradas:

  • Un entero n que representa el número de productos
  • Luego n cadenas que representan los nombres de los productos

Tu programa debe:

  1. Crear un std::vector<std::string> llamado products
  2. Usar push_back() para añadir cada uno de los n nombres de productos al vector
  3. Usar un bucle for tradicional con una variable de índice para iterar a través del vector
  4. En el bucle, usar el método .size() para la condición del bucle
  5. Usar el operador de corchetes [] para acceder a cada elemento por su índice
  6. Imprimir cada producto con su número de posición (empezando desde 1) en el formato especificado

Usa exactamente el siguiente formato de salida:

Product 1: [first product name]
Product 2: [second product name]
Product 3: [third product name]
...

El bucle for debe comenzar con el índice 0, usar i < products.size() como condición e incrementar i en cada iteración. Al imprimir, suma 1 al índice para mostrar los números de posición comenzando desde 1.

Hoja de referencia

Usa un bucle for tradicional para iterar a través de un vector combinando .size() con el acceso basado en índices:

std::vector<std::string> names = {"Alice", "Bob", "Charlie"};

for (int i = 0; i < names.size(); i++) {
    std::cout << names[i] << std::endl;
}

La condición del bucle i < names.size() asegura que no sobrepases los límites del vector, mientras que names[i] accede a cada elemento utilizando el índice actual. La variable de índice te otorga un control preciso sobre con qué elemento estás trabajando y te permite conocer la posición de cada elemento.

Pruébalo tú mismo

#include <iostream>
#include <vector>
#include <string>
using namespace std;

int main() {
    // Leer el número de productos
    int n;
    cin >> n;
    
    // Crear un vector para almacenar los nombres de los productos
    vector<string> products;
    
    // Leer los nombres de los productos y añadirlos al vector
    for (int i = 0; i < n; i++) {
        string product;
        cin >> product;
        products.push_back(product);
    }
    
    // TODO: Escribe tu código a continuación
    // Usa un bucle for tradicional para iterar a través del vector
    // e imprimir cada producto con su número de posición
    
    return 0;
}
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Lógica y Flujo