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

التكرار عبر البيانات المعقدة

جزء من قسم Logic & Flow في رحلة C# على Coddy — الدرس 14 من 66.

يتطلب التكرار عبر الهياكل المعقدة مثل المصفوفات المتداخلة أساليب خاصة.

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

int[][] matrix = new int[3][];
matrix[0] = new int[] { 1, 2, 3 };
matrix[1] = new int[] { 4, 5, 6 };
matrix[2] = new int[] { 7, 8, 9 };

for (int i = 0; i < matrix.Length; i++)
{
    for (int j = 0; j < matrix[i].Length; j++)
    {
        Console.WriteLine(matrix[i][j]);
    }
}

قم بالتكرار عبر مصفوفة سلاسل نصية ومعالجة كل حرف:

string[] words = { "hello", "world" };

for (int i = 0; i < words.Length; i++)
{
    for (int j = 0; j < words[i].Length; j++)
    {
        Console.WriteLine(words[i][j]);
    }
}

عد العناصر في مصفوفة متعرجة (jagged array):

int[][] jaggedArray = new int[3][];
jaggedArray[0] = new int[] { 1, 2, 3 };
jaggedArray[1] = new int[] { 4, 5 };
jaggedArray[2] = new int[] { 6 };

int totalItems = 0;
for (int i = 0; i < jaggedArray.Length; i++)
{
    totalItems += jaggedArray[i].Length;
}
Console.WriteLine($"Total items: {totalItems}");
challenge icon

التحدي

سهل

قم بإنشاء دالة تسمى countElements تقوم بما يلي:

  1. تأخذ مصفوفة متعرجة من السلاسل النصية (string[][]) كمعامل (parameter)
  2. تحسب عدد العناصر الموجودة في المصفوفة المتعرجة بأكملها
  3. تعيد العدد الإجمالي

على سبيل المثال، إذا كان لدينا:

[
  ["apple", "orange", "apple"],
  ["banana", "apple"],
  ["orange"]
]

يجب أن تكون النتيجة 6 (3 + 2 + 1).

ورقة مرجعية

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

int[][] matrix = new int[3][];
matrix[0] = new int[] { 1, 2, 3 };
matrix[1] = new int[] { 4, 5, 6 };
matrix[2] = new int[] { 7, 8, 9 };

for (int i = 0; i < matrix.Length; i++)
{
    for (int j = 0; j < matrix[i].Length; j++)
    {
        Console.WriteLine(matrix[i][j]);
    }
}

قم بالتكرار عبر مصفوفات السلاسل النصية والوصول إلى الأحرف الفردية:

string[] words = { "hello", "world" };

for (int i = 0; i < words.Length; i++)
{
    for (int j = 0; j < words[i].Length; j++)
    {
        Console.WriteLine(words[i][j]);
    }
}

حساب إجمالي العناصر في مصفوفة متعرجة (jagged array):

int[][] jaggedArray = new int[3][];
jaggedArray[0] = new int[] { 1, 2, 3 };
jaggedArray[1] = new int[] { 4, 5 };
jaggedArray[2] = new int[] { 6 };

int totalItems = 0;
for (int i = 0; i < jaggedArray.Length; i++)
{
    totalItems += jaggedArray[i].Length;
}
Console.WriteLine($"Total items: {totalItems}");

جرّب بنفسك

using System;
public class CountElements
{
    // قم بتنفيذ دالة countElements
    public static int countElements(string[][] nestedArray)
    {
        // اكتب الكود الخاص بك هنا
        
    }
}
quiz iconاختبر نفسك

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

جميع دروس Logic & Flow