Menu
Coddy logo textTech

Riepilogo - Trovare un elemento

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

challenge icon

Sfida

Facile

Riceverai due input. Il primo input è un elenco di numeri separati da virgole (ad es., 10,20,30,40) e il secondo input è il numero da cercare. Analizza i numeri separati da virgole in un vettore, quindi cerca il numero di destinazione. Usa .iter().position() per trovare l'indice del numero di destinazione, che restituisce un Option<usize>. Gestisci entrambi i casi usando match e stampa il messaggio appropriato.

Requisiti:

  • Leggi il primo input (numeri separati da virgole) e rimuovi gli spazi bianchi
  • Dividi l'input in base alle virgole e analizza ogni parte come i32 per creare un vettore
  • Leggi il secondo input (numero di destinazione) e rimuovi gli spazi bianchi
  • Analizza il numero di destinazione come i32
  • Usa .iter().position(|&x| x == target) per cercare il numero di destinazione nel vettore
  • Usa un'espressione match per gestire l'Option restituito da .position()
  • Nel ramo Some(index), stampa: Found at index [index]
  • Nel ramo None, stampa: Not found

Input:

  • Prima riga: numeri separati da virgole (ad es., 10,20,30,40)
  • Seconda riga: un numero da cercare (ad es., 30)

Output:

  • Se il numero di destinazione viene trovato: Found at index [index]
  • Se il numero di destinazione non viene trovato: Not found

Provalo tu

use std::io::{self, BufRead};

fn main() {
    let stdin = io::stdin();
    let mut lines = stdin.lock().lines();
    
    // Leggi i numeri separati da virgole
    let numbers_input = lines.next().unwrap().unwrap().trim().to_string();
    
    // Leggi il numero da cercare
    let target_input = lines.next().unwrap().unwrap().trim().to_string();
    
    // Converti i numeri separati da virgole in un vettore
    let numbers: Vec<i32> = numbers_input
        .split(',')
        .map(|s| s.trim().parse().unwrap())
        .collect();
    
    // Converti il numero da cercare
    let target: i32 = target_input.parse().unwrap();
    
    // TODO: Scrivi il tuo codice qui sotto
    // Usa .iter().position() per trovare il numero da cercare e match per gestire il risultato
    
}

Tutte le lezioni di Logica e flusso

Esercitati da solo: Compilatore Rust online