Menu
Coddy logo textTech

המאקרו format!

חלק מהיחידה יסודות במסלול ה-Rust של Coddy. שיעור 70 מתוך 75.

ב-Rust, המאקרו format! מאפשר לך לשלב טקסט עם משתנים בצורה קריאה וניתנת להתאמה אישית. המאקרו הזה דומה ל-println!, אבל במקום להדפיס את הפלט למסוף, הוא מחזיר מחרוזת מעוצבת שאפשר לשמור במשתנה או להשתמש בה בפעולות אחרות.

התחביר הפשוט ביותר משתמש במצייני מקום ללא שם {}:

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

let formatted = format!("Name: {}, Age: {}", name, age);
println!("{}", formatted);
// פלט: שם: Alice, גיל: 30

אפשר להשתמש ישירות בשמות משתנים במצייני המיקום:

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

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

אפשר לציין את המיקום של הארגומנטים באמצעות מספרים:

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

אפשר לשלוט באופן העיצוב של ערכים באמצעות מצייני עיצוב:

// עיצוב מספרים
let pi = 3.1415926;
let formatted_float = format!("{:.2}", pi);
// "3.14"

// ריפוד באפסים
let padded = format!("{:0>5}", "123");
// "00123"
challenge icon

אתגר

קל

צרו תוכנית שמייצרת קוד סודי משם ומשנת לידה באמצעות הכללים המדויקים הבאים:

  • לוקחת את האות הראשונה של השם והופכת אותה לאות גדולה
  • הופכת את סדר הספרות של השנה
  • מקיפה את האות הראשונה בסמלים "⭐"
  • מוסיפה "-" בין האות המוקפת לשנה ההפוכה

כדי להפוך מחרוזת, השתמשו בקוד הבא: .to_string().chars().rev().collect::<String>()

נסו בעצמכם

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();

    // כתבו את הקוד שלכם למטה
    
    
    let secret_code =
    println!("{}", secret_code);
}
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה יסודות

תרגלו בעצמכם: קומפיילר Rust אונליין