Menu
Coddy logo textTech

Correspondência de Múltiplos Valores

Parte da seção Lógica & Fluxo do Journey de Rust da Coddy. Lição 2 de 66.

Às vezes, você precisa corresponder a vários valores diferentes que devem acionar o mesmo código. Em vez de escrever braços separados para cada valor, Rust permite combinar vários padrões em um único braço usando o operador | (OU).

Veja como você pode corresponder a vários valores em um único braço:

let month = 12;

match month {
    12 | 1 | 2 => println!("Winter"),
    3 | 4 | 5 => println!("Spring"),
    6 | 7 | 8 => println!("Summer"),
    9 | 10 | 11 => println!("Fall"),
    _ => println!("Invalid month"),
}

O operador | funciona como "OR" em inglês — se o valor corresponder a qualquer um dos padrões separados por |, esse ramo será executado. Isso torna seu código muito mais limpo do que ter ramos separados que fazem todos a mesma coisa.

challenge icon

Desafio

Fácil

Você receberá um número de day (1-7) como input, representando um dia da semana. Leia o input, converta-o em um inteiro e use uma expressão match com o operador | para imprimir se é um dia útil ou um fim de semana.

Requisitos:

  • Se o day for 1, 2, 3, 4 ou 5, imprima "Weekday"
  • Se o day for 6 ou 7, imprima "Weekend"
  • Para qualquer outro número, imprima "Invalid day"

Entrada: Um único inteiro representando o número do day

Saída: Imprima "Weekday", "Weekend" ou "Invalid day"

Experimente você mesmo

use std::io;

fn main() {
    // Ler entrada
    let mut input = String::new();
    io::stdin().read_line(&mut input).expect("Failed to read line");
    let day: i32 = input.trim().parse().expect("Please enter a number");
    
    // TODO: Escreva seu código abaixo usando a expressão match com o operador |
    
}
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Lógica & Fluxo

Pratique por conta própria: Compilador de Rust online