Menu
Coddy logo textTech

Crear un vector

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

Ahora que entiendes qué son los vectores, aprendamos cómo crearlos. Rust ofrece dos formas principales de crear un vector, cada una adecuada para diferentes situaciones.

El primer método utiliza Vec::new() para crear un vector vacío al que puedes añadir elementos más tarde:

let mut numbers = Vec::new();

Observa que usamos mut porque probablemente querremos añadir elementos a este vector vacío más tarde. Rust no siempre puede determinar el tipo de un vector vacío, por lo que es posible que debas especificarlo explícitamente:

let mut numbers: Vec<i32> = Vec::new();

El segundo método utiliza la macro vec![] para crear un vector con valores iniciales:

let numbers = vec![1, 2, 3, 4, 5];

La macro vec![] es más conveniente cuando conoces los valores iniciales. Rust puede determinar automáticamente el tipo a partir de los valores que proporciones, por lo que no es necesaria ninguna anotación de tipo. Este vector contiene cinco enteros y está listo para usarse inmediatamente.

La macro vec![] también admite una sintaxis de repetición para crear un vector lleno con el mismo valor. Usa vec![value; n] para crear un vector con n elementos, cada uno establecido en value:

let zeros = vec![0; 5];   // [0, 0, 0, 0, 0]
let tens = vec![10; 3];   // [10, 10, 10]

Esto es especialmente útil cuando quieres crear un vector de un tamaño específico determinado en tiempo de ejecución, por ejemplo a partir de la entrada del usuario:

let n = 4;
let data = vec![10; n];   // [10, 10, 10, 10]

Ambos enfoques crean el mismo tipo de vector: la elección depende de si tienes valores iniciales o si planeas construir el vector gradualmente.

challenge icon

Desafío

Fácil

Recibirás un número como entrada que representa cuántos elementos debe contener un vector. Lee la entrada, conviértela a un entero y crea un vector con esa cantidad de elementos, donde cada elemento sea el número 10.

Requisitos:

  • Lee la entrada y conviértela a un entero
  • Crea un vector usando la macro vec![]
  • El vector debe contener el número especificado de elementos
  • Cada elemento debe tener el valor 10
  • Imprime cada elemento en una línea separada

Entrada: Un solo entero que representa el número de elementos

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

Pruébalo tú mismo

use std::io;

fn main() {
    // Leer la entrada
    let mut input = String::new();
    io::stdin().read_line(&mut input).expect("Failed to read line");
    let n: usize = input.trim().parse().expect("Invalid input");
    
    // TODO: Escribe tu código debajo
    // Crea un vector con n elementos, cada uno con el valor 10
    
    
    // Imprime cada elemento 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