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 hain, pehle variable declare kar ke 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 kar ke ispar 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 kyunke unka matlab value compute karna nahi hota. for ek range ya collection ko directly iterate karta hai, kisi manual index bookkeeping ke baghair.

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 karein. if/else expression istemal kar ke ek variable grade ko set karein "pass" agar score 60 ya us se zyada ho, warna "fail", phir grade print karein.