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

الحلقات المتداخلة مع المصفوفات ثنائية الأبعاد

جزء من قسم Logic & Flow في رحلة JavaScript على Coddy — الدرس 8 من 65.

عند العمل مع المصفوفات ثنائية الأبعاد، غالبًا ما نستخدم الحلقات المتداخلة للتكرار عبر كل صف وكل عمود، مما يسمح لنا بالوصول إلى كل عنصر في المصفوفة أو تعديله.

إليك هيكل نموذجي للحلقات المتداخلة لمصفوفة ثنائية الأبعاد:

const seats = [
  [true, true, false],
  [true, false, true]
];

for (let r = 0; r < seats.length; r++) {
  // الحلقة الخارجية تمر عبر الصفوف
  for (let c = 0; c < seats[r].length; c++) {
    // الحلقة الداخلية تمر عبر الأعمدة
    // يمكن الوصول إلى seats[r][c] هنا
  }
}

تتكرر الحلقة الخارجية عبر الصفوف، وتتكرر الحلقة الداخلية عبر أعمدة كل صف. بهذه الطريقة، يمكنك الوصول إلى كل عنصر في المصفوفة ثنائية الأبعاد باستخدام array[r][c].

challenge icon

التحدي

سهل

أنشئ دالة باسم countOccurrences تأخذ مصفوفة ثنائية الأبعاد من السلاسل النصية matrix وسلسلة نصية target. يجب أن تعيد عدد المرات التي يظهر فيها target عبر جميع الصفوف والأعمدة.

ورقة مرجعية

استخدم الحلقات المتداخلة للتكرار عبر المصفوفات ثنائية الأبعاد - الحلقة الخارجية للصفوف والحلقة الداخلية للأعمدة:

const seats = [
  [true, true, false],
  [true, false, true]
];

for (let r = 0; r < seats.length; r++) {
  // الحلقة الخارجية تتكرر عبر الصفوف
  for (let c = 0; c < seats[r].length; c++) {
    // الحلقة الداخلية تتكرر عبر الأعمدة
    // الوصول إلى العنصر باستخدام seats[r][c]
  }
}

جرّب بنفسك

function countOccurrences(matrix, target) {
  // TODO: قم بتنفيذ المنطق لحساب عدد مرات ظهور 'target' في المصفوفة
}
// لا تكتب أي شيء خارج الدالة
quiz iconاختبر نفسك

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

جميع دروس Logic & Flow