Menu
Coddy logo textTech

Makro format!

Część sekcji Podstawy ścieżki Rust w Coddy. Lekcja 70 z 75.

W Rust makro format! pozwala łączyć tekst ze zmiennymi w czytelny i konfigurowalny sposób. To makro jest podobne do println!, ale zamiast wyświetlać wynik w konsoli, zwraca sformatowany ciąg znaków, który możesz zapisać w zmiennej lub wykorzystać w innych operacjach.

Najprostsza składnia używa nienazwanych symboli zastępczych {}:

let name = "Alice";
let age = 30;

let formatted = format!("Name: {}, Age: {}", name, age);
println!("{}", formatted);
// Wynik: Name: Alice, Age: 30

Możesz używać nazw zmiennych bezpośrednio w symbolach zastępczych:

let name = "Bob";
let age = 25;

let formatted = format!("Name: {name}, Age: {age}");
println!("{}", formatted);
// Wynik: Name: Bob, Age: 25

Możesz określić pozycję argumentów za pomocą liczb:

let formatted = format!("{1} {0} {2}", "first", "second", "third");
println!("{}", formatted);
// Wynik: second first third

Możesz kontrolować sposób formatowania wartości za pomocą specyfikatorów formatu:

// Formatowanie liczb
let pi = 3.1415926;
let formatted_float = format!("{:.2}", pi);
// "3.14"

// Dopełnianie zerami
let padded = format!("{:0>5}", "123");
// "00123"
challenge icon

Wyzwanie

Łatwy

Utwórz program, który generuje tajny kod z imienia i roku urodzenia, stosując dokładnie następujące zasady:

  • Pobiera pierwszą literę imienia i zamienia ją na wielką
  • Odwraca kolejność cyfr w roku
  • Otacza pierwszą literę symbolami "⭐"
  • Dodaje znak "-" między otoczoną literą a odwróconym rokiem

Aby odwrócić ciąg znaków, użyj następującego kodu: .to_string().chars().rev().collect::<String>()

Spróbuj swoich sił

use std::io;


fn main() {
    let mut input_name = String::new();
    let mut input_year = String::new();
    io::stdin().read_line(&mut input_name).unwrap();
    io::stdin().read_line(&mut input_year).unwrap();
    let name = input_name.trim();
    let year: i32 = input_year.trim().parse().unwrap();

    // Napisz swój kod poniżej
    
    
    let secret_code =
    println!("{}", secret_code);
}
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Kompilator Rust online