Menu
Coddy logo textTech

Aggiungere elementi con push

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

Una volta che hai un vettore, spesso vorrai aggiungervi nuovi elementi. Rust fornisce il metodo .push() per aggiungere elementi alla fine di un vettore. Questa è una delle operazioni più comuni che eseguirai con i vettori.

Ecco come usare .push():

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

Nota la parola chiave mut: è fondamentale! Poiché l'aggiunta di elementi modifica il contenuto del vettore, il vettore deve essere dichiarato mutabile. Senza mut, Rust non ti permetterà di modificare il vettore.

Il metodo .push() aggiunge sempre il nuovo elemento alla fine del vettore. Ogni chiamata a .push() aumenta la lunghezza del vettore di uno:

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

Puoi anche iniziare con un vettore che contiene già degli elementi e continuare ad aggiungerne:

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

Sfida

Facile

Riceverai tre numeri come input, ciascuno su una riga separata. Leggi questi numeri, convertili in interi e aggiungili a un vettore usando il metodo .push(). Dopo aver aggiunto tutti e tre i numeri, stampa ogni elemento del vettore su una riga separata.

Requisiti:

  • Crea un vettore mutabile vuoto
  • Leggi tre numeri dall'input e converti ciascuno in un intero
  • Usa .push() per aggiungere ogni numero al vettore
  • Stampa ogni elemento del vettore su una riga separata

Input: Tre interi, ciascuno su una riga separata

Output: Stampa ogni elemento del vettore su una riga separata

Provalo tu

use std::io;

fn main() {
    // Leggi tre numeri dall'input
    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: Scrivi il tuo codice qui sotto
    // Crea un vettore mutabile e aggiungici i numeri
    
    
    // Stampa ogni elemento del vettore 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