Menu
CoddyTech
flag Ar iconالعربيةdown icon

دليل النطاق (Range)

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

في هذا الدرس، سنستكشف المزيد حول كيفية عمل النطاق.

نطاق الصياغة الأساسية:

  • start..end - ينشئ نطاقًا من البداية إلى النهاية (غير شامل)
  • start..=end - ينشئ نطاقًا من البداية إلى النهاية (شامل)
  • ..end - ينشئ نطاقًا من 0 إلى end (غير شامل)
  • ..=end - ينشئ نطاقًا من 0 إلى end (شامل)
  • start.. - ينشئ نطاقًا من start إلى ما لا نهاية
  • .. - ينشئ نطاقًا من سالب ما لا نهاية إلى موجب ما لا نهاية

اعكس النطاق باستخدام .rev():

  • (0..5).rev() - 4, 3, 2, 1, 0
  • (0..=5).rev() - 5, 4, 3, 2, 1, 0

القفز بخطوات باستخدام .step_by(n):

  • (0..10).step_by(2) - 0, 2, 4, 6, 8
  • (0..10).rev().step_by(2) - 9, 7, 5, 3, 1

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

// نطاق تصاعدي بسيط
for i in 0..5 { }
// القيم: 0, 1, 2, 3, 4
// نطاق شامل
for i in 0..=5 { }
// القيم: 0, 1, 2, 3, 4, 5
// النطاق العكسي
for i in (0..5).rev() { }
// القيم: 4, 3, 2, 1, 0
// تقدّم بخطوة مقدارها 2
for i in (0..10).step_by(2) { }
// القيم: 0, 2, 4, 6, 8
// اجمع بين reverse وstep
for i in (0..10).rev().step_by(3) { }
// القيم: 9, 6, 3, 0
challenge icon

التحدي

سهل

أُعطيتَ مصفوفتين، numbers1 وnumbers2. اطبع سطرًا واحدًا لكل منهما:

  • المصفوفة 1: ابدأ من الموضع الأخير في numbers1 وتحرك إلى الخلف بمقدار 3 مواضع في كل مرة (الفهارس 25 و22 و19 و...)، مع طباعة القيمة في كل موضع.
  • المصفوفة 2: مرّ على numbers2 من العنصر الأخير إلى الأول، واطبع القيم القابلة للقسمة على 4 فقط.

اطبع كل قيمة بين قوسين مربعين، وضع , بين القيم، ولا تضع شيئًا بعد القيمة الأخيرة:

Array 1: [26], [23], [20], ...
Array 2: [36], [36], ...

جرّب بنفسك

fn main() {
    let numbers1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26];
    let numbers2 = [17, 53, 24, 77, 84, 98, 24, 36, 89, 31, 36];
    print!("Array 1: ");
    // اكتب الكود الخاص بك هنا
    
    println!();
    print!("Array 2: ");
    // اكتب الكود الخاص بك هنا
}
quiz iconاختبر نفسك

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

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

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