AnyCompiler

Control Flow

Rust mein if ek expression hai, sirf ek statement nahi — yeh ek value produce kar sakta hai, isi liye aap if/else ke result ko directly ek variable mein assign kar sakte ho, pehle variable declare karke har branch ke andar assign karne ke bajaye.

fn main() {
    let number = 7;

    let description = if number % 2 == 0 {
        "even"
    } else {
        "odd"
    };

    println!("{} is {}", number, description);
}
Output
7 is odd

loop, while, aur for

loop tab tak chalta hai jab tak aap explicitly break karke ispe se bahar nahi nikalte — aur break loop se ek value bahar le ja sakta hai, jo loop expression ka result ban jaati hai, jo while aur for nahi kar sakte kyunki unka matlab value compute karna nahi hota. for ek range ya collection ko directly iterate karta hai, bina kisi manual index bookkeeping ke.

fn main() {
    let mut count = 0;
    let result = loop {
        count += 1;
        if count == 5 {
            break count * 2;
        }
    };
    println!("result = {}", result);

    for i in 0..3 {
        println!("i = {}", i);
    }
}
Output
result = 10
i = 0
i = 1
i = 2

Aage: vectors — Rust ka growable array type.

Practice Exercise

Ek variable score: i32 = 73 set karo. if/else expression use karke ek variable grade ko set karo "pass" agar score 60 ya usse zyada ho, warna "fail", phir grade print karo.