use std::io;

fn factorial(n: u32) -> u32 {
    let mut result = 1;
    for i in 1..=n {
        result *= i;
    }
    result
}

fn main() {
    println!("Enter a non-negative integer:");
    let mut input = String::new();
    io::stdin()
        .read_line(&mut input)
        .expect("Failed to read line");
    let n: u32 = match input.trim().parse() {
        Ok(num) => num,
        Err(_) => {
            println!("Invalid input, please enter a non-negative integer.");
            return;
        }
    };
    let result = factorial(n);
    println!("{}! = {}", n, result);
}

В этом примере мы используем стандартную библиотеку Rust для ввода и вывода данных из консоли с помощью std::io. Мы также используем цикл for для вычисления факториала и возвращаем результат. В main мы запрашиваем у пользователя ввод неотрицательного целого числа, затем вызываем функцию factorial и выводим результат на экран.
ใช้มาตรฐาน::io; fn แฟกทอเรียล (n: u32) -> u32 { ให้ผลลัพธ์ mut = 1; สำหรับฉัน ใน 1..=n { ผลลัพธ์ *= i; } ผล } fn main() { println!("ป้อนจำนวนเต็มที่ไม่เป็นลบ:"); ให้ mut input = String::new(); io::stdin() .read_line(&mut input) .expect("ไม่สามารถอ่านบรรทัด"); ให้ n: u32 = match input.trim().parse() { Ok(num) => num, Err(_) => { println!("Invalid input, please enter a non-negative integer."); กลับ; } }; ให้ผลลัพธ์ = แฟกทอเรียล (n); println!("{}! = {}", n, ผลลัพธ์); } ในตัวอย่างนี้ เราใช้ไลบรารีมาตรฐานของ Rust เพื่ออินพุตและเอาต์พุตข้อมูลจากคอนโซลโดยใช้ std::io นอกจากนี้เรายังใช้ for loop เพื่อคำนวณแฟกทอเรียลและส่งคืนผลลัพธ์ โดยหลักแล้ว เราขอให้ผู้ใช้กรอกจำนวนเต็มที่ไม่เป็นลบ จากนั้นจึงเรียกใช้ฟังก์ชันแฟกทอเรียลและพิมพ์ผลลัพธ์ลงบนหน้าจอ
spam fails_task lang_mismatch pii not_appropriate hate_speech sexual_content quality toxicity humor helpfulness creativity violence