Menu
Coddy logo textTech

Creare un vettore

Fa parte della sezione Logica e flusso del percorso Rust di Coddy. Lezione 8 di 66.

Ora che hai capito cosa sono i vettori, impariamo a crearli. Rust offre due modi principali per creare un vettore, ciascuno adatto a situazioni diverse.

Il primo metodo usa Vec::new() per creare un vettore vuoto a cui potrai aggiungere elementi in seguito:

let mut numbers = Vec::new();

Nota che usiamo mut perché probabilmente vorremo aggiungere elementi a questo vettore vuoto in seguito. Rust non può sempre determinare il tipo di un vettore vuoto, quindi potresti doverlo specificare esplicitamente:

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

Il secondo metodo usa la macro vec![] per creare un vettore con valori iniziali:

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

La macro vec![] è più comoda quando conosci i valori iniziali. Rust può determinare automaticamente il tipo dai valori che fornisci, quindi non è necessaria alcuna annotazione del tipo. Questo vettore contiene cinque numeri interi ed è subito pronto all'uso.

La macro vec![] supporta anche una sintassi di ripetizione per creare un vettore riempito con lo stesso valore. Usa vec![value; n] per creare un vettore con n elementi, ciascuno impostato su value:

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

Questo è particolarmente utile quando vuoi creare un vettore di una dimensione specifica determinata in fase di esecuzione, ad esempio a partire dall'input dell'utente:

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

Entrambi gli approcci creano lo stesso tipo di vettore: la scelta dipende dal fatto che tu abbia valori iniziali o intenda costruire il vettore gradualmente.

challenge icon

Sfida

Facile

Riceverai in input un numero che rappresenta quanti elementi deve contenere un vettore. Leggi l’input, convertilo in un intero e crea un vettore con quel numero di elementi, dove ogni elemento è il numero 10.

Requisiti:

  • Leggi l’input e convertilo in un intero
  • Crea un vettore usando la macro vec![]
  • Il vettore deve contenere il numero specificato di elementi
  • Ogni elemento deve avere il valore 10
  • Stampa ogni elemento su una riga separata

Input: Un singolo intero che rappresenta il numero di elementi

Output: Stampa ogni elemento del vettore su una riga separata

Provalo tu

use std::io;

fn main() {
    // Leggi l'input
    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: Scrivi il tuo codice qui sotto
    // Crea un vettore con n elementi, ciascuno con valore 10
    
    
    // Stampa ogni elemento su una riga separata
    
}
quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Logica e flusso

Esercitati da solo: Compilatore Rust online