Menu
Coddy logo textTech

Powtórka – walidator profilu użytkownika

Część sekcji Logika i przepływ programu ścieżki Rust w Coddy. Lekcja 65 z 66.

challenge icon

Wyzwanie

Łatwy

Otrzymasz trzy dane wejściowe reprezentujące profil użytkownika. Pierwsza to nazwa użytkownika, druga to wiek, a trzecia to adres e-mail. Zweryfikuj profil zgodnie z poniższymi zasadami i wypisz odpowiedni komunikat:

Zasady weryfikacji:

  • Nazwa użytkownika musi mieć co najmniej 3 znaki
  • Wiek musi mieścić się w przedziale od 13 do 120 (włącznie)
  • Adres e-mail musi zawierać symbol @

Wymagania:

  • Wczytaj nazwę użytkownika i usuń białe znaki z jej początku i końca
  • Wczytaj wiek, usuń białe znaki z jego początku i końca, a następnie sparsuj go do typu i32
  • Wczytaj adres e-mail i usuń białe znaki z jego początku i końca
  • Sprawdź, czy nazwa użytkownika ma co najmniej 3 znaki
  • Sprawdź, czy wiek mieści się w przedziale od 13 do 120 (użyj match z zakresami)
  • Sprawdź, czy adres e-mail zawiera znak @ (użyj metody .contains())
  • Jeśli wszystkie weryfikacje zakończą się powodzeniem, wypisz: Valid profile
  • Jeśli nazwa użytkownika jest za krótka, wypisz: Invalid username
  • Jeśli wiek jest poza zakresem, wypisz: Invalid age
  • Jeśli adres e-mail nie zawiera @, wypisz: Invalid email
  • Weryfikuj dane w tej kolejności: najpierw nazwę użytkownika, następnie wiek, a na końcu adres e-mail

Dane wejściowe:

  • Pierwszy wiersz: nazwa użytkownika (np. alice123)
  • Drugi wiersz: wiek (np. 25)
  • Trzeci wiersz: adres e-mail (np. alice@example.com)

Wynik:

  • Jeden z komunikatów: Valid profile, Invalid username, Invalid age lub Invalid email

Spróbuj swoich sił

use std::io;

fn main() {
    // Wczytaj nazwę użytkownika
    let mut username = String::new();
    io::stdin().read_line(&mut username).expect("Failed to read line");
    let username = username.trim();
    
    // Wczytaj wiek
    let mut age_input = String::new();
    io::stdin().read_line(&mut age_input).expect("Failed to read line");
    let age: i32 = age_input.trim().parse().expect("Failed to parse age");
    
    // Wczytaj adres e-mail
    let mut email = String::new();
    io::stdin().read_line(&mut email).expect("Failed to read line");
    let email = email.trim();
    
    // TODO: Napisz poniżej kod sprawdzający poprawność profilu
    // Sprawdź długość nazwy użytkownika, zakres wieku i format adresu e-mail
    // Wyświetl odpowiedni komunikat na podstawie wyników sprawdzania
    
}

Wszystkie lekcje w sekcji Logika i przepływ programu

Poćwicz samodzielnie: Kompilator Rust online