Menu
CoddyTech

جمل If-Else المتداخلة

جزء من قسم الأساسيات في رحلة Rust على Coddy. الدرس 28 من 75.

يمكننا تضمين عبارات if / else if / else بعضها داخل بعض. وهذا يتيح لنا إنشاء بُنى هرمية لاتخاذ القرارات.

على سبيل المثال:

if age > 18 {
    if hasLicense {
        println!("You can drive");
    } else {
        println!("Get a license first");
    }
} else {
    println!("Too young to drive");
}

يمكن أن يكون متداخلًا بلا حدود:

if condition1 {
	if condition2 {
		if condition3 {
		    // إذا كانت condition1 وcondition2 وcondition3 صحيحة
		    ...
		}
	}
}
challenge icon

التحدي

مبتدئ

أنشئ برنامجًا يتحقق مما إذا كان بإمكان شخص ما ركوب الأفعوانية. المتطلبات هي:

  • يجب أن يكون عمره 12 سنة على الأقل
  • يجب أن يزيد طوله عن 150cm
  • إذا استوفى كلا المتطلبين وكان عمره أقل من 15 سنة، فيحتاج إلى إشراف شخص بالغ

اطبع هذه الرسائل بالضبط لكل حالة:

  • إذا كان صغيرًا جدًا: Sorry, you're too young
  • إذا لم يكن طويلًا بما يكفي: Sorry, you're not tall enough
  • إذا كان عمره أقل من 15 سنة ولا يرافقه شخص بالغ: Sorry, you need an adult with you
  • إذا كان عمره أقل من 15 سنة ويرافقه شخص بالغ: You can ride with adult supervision!
  • إذا كان عمره 15 سنة أو أكثر وكان طويلًا بما يكفي: You can ride by yourself!

جرّب بنفسك

use std::io;

fn main() {
    let mut age_input = String::new();
    let mut height_input = String::new();
    let mut adult_input = String::new();
    
    io::stdin().read_line(&mut age_input).unwrap();
    io::stdin().read_line(&mut height_input).unwrap();
    io::stdin().read_line(&mut adult_input).unwrap();
    
    let age: i32 = age_input.trim().parse().unwrap();
    let height: i32 = height_input.trim().parse().unwrap();
    let has_adult: bool = adult_input.trim().parse().unwrap();

    // اكتب شيفرتك أدناه
    
}
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس الأساسيات

تدرّب بنفسك: مترجم Rust عبر الإنترنت