ورقة عمل الدرس 9: تمارين على المصفوفات ثنائية البعد (الجداول)

ورقة عمل الدرس 9: تمارين على المصفوفات ثنائية البعد (الجداول)

ورقة عمل الدرس 9: تمارين على المصفوفات ثنائية البعد

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

الجزء الأول: تتبع التنفيذ وفهم المفاهيم

التمرين 1:

لدينا المصفوفة M التالية (3 صفوف و 4 أعمدة):

105815
20253035
40455055

ما هي قيمة M[2, 3]؟ وما هي قيمة M[3, 2]؟

التمرين 2:

باستخدام نفس المصفوفة M أعلاه، ما هي القيمة النهائية للمتغير S بعد تنفيذ الكود التالي؟

S ← 0 Pour i AllantDe 1 A 3 Faire     S ← S + M[i, 1] // يجمع عناصر العمود الأول FinPour

الجزء الثاني: بناء خوارزميات باستخدام المصفوفات ثنائية البعد

التمرين 3: (جمع مصفوفتين)

المشكلة: اكتب خوارزمية كاملة تقوم بجمع مصفوفتين A و B من نفس الحجم (مثلاً 2x3) وتضع الناتج في مصفوفة ثالثة C.

1. افترض أن A و B مملوءتان مسبقًا.
2. عملية الجمع تتم بجمع كل عنصرين متقابلين: C[i, j] ← A[i, j] + B[i, j].
3. بعد حساب المصفوفة C، قم بعرض عناصرها.

التمرين 4: (حساب معدل كل مادة)

المشكلة: بالعودة لمثال علامات الطلاب، افترض أن لديك مصفوفة grille_notes[10, 3] (10 طلاب, 3 مواد) مملوءة مسبقًا. اكتب خوارزمية تحسب وتعرض المعدل الحسابي لكل مادة (لكل عمود).

تلميح: ستحتاج إلى حلقة خارجية تمر على الأعمدة (المواد) وحلقة داخلية تمر على الصفوف (الطلاب) لجمع العلامات في ذلك العمود.

التمرين 5: (تحدي - البحث عن أكبر عنصر في المصفوفة)

المشكلة: اكتب خوارزمية تبحث عن أكبر عنصر في مصفوفة M (مثلاً بحجم 4x5) وتعرض قيمته وموقعه (رقم الصف ورقم العمود).

فكرة الحل: تشبه إلى حد كبير البحث في مصفوفة أحادية البعد. ستحتاج إلى متغير لتخزين أكبر قيمة (max_valeur) ومتغيرين لتخزين موقعه (max_ligne, max_col). ابدأ بافتراض أن العنصر الأول M[1, 1] هو الأكبر، ثم مر على جميع العناصر الأخرى وقارنها به.
google-playkhamsatmostaqltradent