Menu
Coddy logo textTech

Añadir elementos con push

Parte de la sección Logic & Flow del Journey de Rust de Coddy — lección 9 de 66.

Una vez que tengas un vector, a menudo querrás añadirle nuevos elementos. Rust proporciona el método .push() para añadir elementos al final de un vector. Esta es una de las operaciones más comunes que realizarás con vectores.

Aquí se explica cómo usar .push():

let mut numbers = Vec::new();
numbers.push(10);
numbers.push(20);
numbers.push(30);

Observa la palabra clave mut: ¡esto es crucial! Dado que añadir elementos cambia el contenido del vector, el vector debe declararse como mutable. Sin mut, Rust no te permitirá modificar el vector.

El método .push() siempre añade el nuevo elemento al final del vector. Cada llamada a .push() incrementa la longitud del vector en uno:

let mut fruits = Vec::new();
fruits.push("apple");
fruits.push("banana");
// fruits ahora contiene ["apple", "banana"]

También puedes empezar con un vector que ya tenga elementos y continuar añadiéndole más:

let mut scores = vec![85, 92];
scores.push(78); // scores ahora es [85, 92, 78]
challenge icon

Desafío

Fácil

Recibirás tres números como entrada, cada uno en una línea separada. Lee estos números, conviértelos a enteros y añádelos a un vector usando el método .push(). Después de añadir los tres números, imprime cada elemento del vector en una línea separada.

Requisitos:

  • Crea un vector mutable vacío
  • Lee tres números de la entrada y convierte cada uno a un entero
  • Usa .push() para añadir cada número al vector
  • Imprime cada elemento del vector en una línea separada

Entrada: Tres números enteros, cada uno en una línea separada

Salida: Imprime cada elemento del vector en una línea separada

Hoja de referencia

Para añadir elementos a un vector, utiliza el método .push(). El vector debe declararse como mutable con la palabra clave mut:

let mut numbers = Vec::new();
numbers.push(10);
numbers.push(20);
numbers.push(30);

El método .push() añade elementos al final del vector e incrementa su longitud en uno con cada llamada.

También puedes añadir elementos a un vector que ya contiene valores:

let mut scores = vec![85, 92];
scores.push(78); // scores ahora es [85, 92, 78]

Pruébalo tú mismo

use std::io;

fn main() {
    // Leer tres números de la entrada
    let mut input1 = String::new();
    io::stdin().read_line(&mut input1).expect("Failed to read line");
    let num1: i32 = input1.trim().parse().expect("Invalid input");
    
    let mut input2 = String::new();
    io::stdin().read_line(&mut input2).expect("Failed to read line");
    let num2: i32 = input2.trim().parse().expect("Invalid input");
    
    let mut input3 = String::new();
    io::stdin().read_line(&mut input3).expect("Failed to read line");
    let num3: i32 = input3.trim().parse().expect("Invalid input");
    
    // TODO: Escribe tu código a continuación
    // Crear un vector mutable y añadirle los números
    
    
    // Imprimir cada elemento del vector en una línea separada
}
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 Logic & Flow