۱۲

پروژه: ساخت بازی حدس عدد

با تمام چیزهایی که یاد گرفتیم، یک ابزار خط فرمان کاربردی می‌سازیم.

هدف پروژه

وقتشه همه چیزایی که یاد گرفتیم رو در عمل استفاده کنیم! می‌خوایم یه بازی کلاسیک "حدس عدد" رو به عنوان یه اپلیکیشن خط فرمان (CLI) بنویسیم. برنامه یه عدد تصادفی بین ۱ تا ۱۰۰ انتخاب می‌کنه و کاربر باید اون رو حدس بزنه. برنامه هم بعد از هر حدس، راهنمایی می‌کنه که عددش بزرگتره یا کوچیکتر.

در این پروژه از متغیرها، حلقه‌ها، `match` برای مدیریت خطا و ورودی، و کریت خارجی `rand` استفاده می‌کنیم.

کد کامل پروژه

اول با `cargo new guessing_game` پروژه رو بسازید و کریت `rand` رو به `Cargo.toml` اضافه کنید. بعد کد زیر رو در `src/main.rs` قرار بدید.

use std::io;
use std::cmp::Ordering;
use rand::Rng;

fn main() {
    println!("Guess the number!");

    let secret_number = rand::thread_rng().gen_range(1..=100);

    loop {
        println!("Please input your guess.");

        let mut guess = String::new();

        io::stdin()
            .read_line(&mut guess)
            .expect("Failed to read line");

        let guess: u32 = match guess.trim().parse() {
            Ok(num) => num,
            Err(_) => {
                println!("Please type a number!");
                continue;
            }
        };

        println!("You guessed: {}", guess);

        match guess.cmp(&secret_number) {
            Ordering::Less => println!("Too small!"),
            Ordering::Greater => println!("Too big!"),
            Ordering::Equal => {
                println!("You win!");
                break;
            }
        }
    }
}

آفرین! دوره Rust تموم شد! 🦀🏆

شما با موفقیت این دوره رو به پایان رسوندین و حالا یه درک خیلی خوب از مفاهیم قدرتمند Rust دارین. این زبان دنیای بزرگی داره و این فقط نقطه شروع بود. به یادگیری ادامه بدین و از ساختن نرم‌افزارهای سریع و امن لذت ببرین!