Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

الحلقة اللانهائية

جزء من قسم Fundamentals في رحلة Rust على Coddy — الدرس 43 من 75.

في لغة Rust، يمكن إنشاء حلقات تكرار لا نهائية باستخدام إما loop أو while true. كلاهما يعمل حتى يتم إيقافهما صراحةً باستخدام break أو إنهاء البرنامج.

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

loop {
    // الكود الذي سيتم تنفيذه بشكل متكرر
    if condition {
        break; // الخروج من الحلقة إذا تحقق الشرط
    }
}

تستمر الحلقة حتى تصل إلى break. وهي مفيدة للبرامج التي تحتاج إلى العمل بشكل مستمر، مثل الخوادم أو الأجهزة.

إليك مثال على حلقة تكرار لا نهائية تطبع الأرقام حتى يتم استيفاء شرط معين:

let mut count = 0;
loop {
    println!("Count: {}", count);
    count += 1;
    if count > 5 {
        break;
        // الخروج من حلقة التكرار عندما يكون count أكبر من 5
    }
}

في هذا المثال، ستقوم الحلقة بطباعة الأرقام من 0 إلى 5 ثم تخرج عندما تصبح count تساوي 6.

challenge icon

التحدي

مبتدئ

اكتب برنامجاً بلغة Rust يحاكي عداداً بسيطاً. يجب أن يستخدم البرنامج حلقة تكرار غير منتهية لزيادة العداد باستمرار وطباعة قيمته. يجب أن تنتهي الحلقة عندما يصل العداد إلى قيمة معينة يتم تحديدها من خلال المدخلات.

خطوات البرنامج:

  1. قم بتهيئة متغير قابل للتغيير counter بالقيمة 0.
  2. استخدم حلقة تكرار غير منتهية (loop) لزيادة الـ counter بمقدار 1 في كل تكرار.
  3. داخل الحلقة، اطبع القيمة الحالية لـ counter.
  4. تحقق مما إذا كان counter يساوي قيمة الإنهاء التي أدخلها المستخدم. إذا كان الأمر كذلك، اخرج من الحلقة.

ورقة مرجعية

يمكن إنشاء الحلقات اللانهائية في Rust باستخدام loop أو while true. وهي تعمل حتى يتم إيقافها صراحةً باستخدام break.

بنية الحلقة اللانهائية الأساسية:

loop {
    // الكود الذي سيتم تنفيذه بشكل متكرر
    if condition {
        break; // الخروج من الحلقة إذا تحقق الشرط
    }
}

مثال مع عداد:

let mut count = 0;
loop {
    println!("Count: {}", count);
    count += 1;
    if count > 5 {
        break;
    }
}

جرّب بنفسك

use std::io;

fn main() {
    let mut input = String::new();
    io::stdin().read_line(&mut input).unwrap();
    let limit: i32 = input.trim().parse().unwrap();

    let mut counter = 0;
    // اكتب كودك بالأسفل

}
quiz iconاختبر نفسك

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

جميع دروس Fundamentals