🎯 الطالب: لم يبدأ التحدي بعد
مهمة افتتاحية للحصة

🔐 مهمة فك الشفرة

الطريق الوحيد لإعادة تشغيل نظام المختبر هو استخدام لغة البايثون وفهم حل الأنظمة الخطية.

تعطّل نظام الذكاء الاصطناعي في مختبر البرمجة، وتوقفت الشاشات عن العمل. ترك النظام رسالة أخيرة تقول: لن تُفتح الشفرة إلا إذا فهمتم الأنظمة الخطية، والمصفوفات، والخطوات العامة للحل باستخدام Python و NumPy.
مهمتكم اليوم: تعلّم المفاهيم، ثم فتح القفل الأول، ثم القفل الثاني، ثم القفل الأخير حتى تكتمل الشفرة النهائية.
؟
؟
؟

كل قفل يفتح رقمًا واحدًا من الشفرة.

المرحلة الأولى

ما الأنظمة الخطية؟ وكيف نميزها؟

قبل أن نفتـح أول رقم من الشفرة، يجب أن نعرف متى يكون النظام خطيًا ومتى يكون غير خطي. الفكرة الأساسية: إذا ظهرت المتغيرات بأس 1 فقط، بدون تربيع وبدون ضرب بين المتغيرات وبدون جذر، فغالبًا نحن أمام نظام خطي.

✅ نظام خطي

x + 3y = 5
x - 4y = -2

المتغيرات هنا من الدرجة الأولى فقط، لذلك يمكن تمثيلها بمصفوفات وحلها باستخدام NumPy.

❌ نظام غير خطي

x² + y = 5
xy - 2 = 7

هنا لدينا تربيع أو ضرب متغيرات، وهذا يعني أن النظام غير خطي ولا نستخدم معه نفس طريقة linalg.solve.

💡 تلميح ذكي

  • وجود أو يعني غير خطي.
  • وجود xy يعني غير خطي.
  • وجود x و y فقط بأس 1 يعني خطي.
علوم البيانات
الذكاء الاصطناعي
الهندسة
الاقتصاد
القفل الأول

افتح الرقم الأول من الشفرة

أجب عن 3 أسئلة حول تمييز الأنظمة الخطية. يجب الإجابة الصحيحة على كل سؤال للانتقال إلى السؤال التالي.

السؤال 1: هل النظام التالي خطي؟
x + 2y = 7
3x - y = 4
السؤال 2: هل النظام التالي خطي؟
x² + y = 6
x - y = 1
السؤال 3: أي عبارة صحيحة؟

🎉 تم فتح القفل الأول

أحسنت! حصلت على الرقم الأول من الشفرة.

2
المرحلة الثانية

القاعدة العامة لحل الأنظمة الخطية باستخدام بايثون

بعد أن عرفنا متى يكون النظام خطيًا، ننتقل الآن إلى الخطوات العامة للحل في لغة البايثون باستخدام مكتبة NumPy.

1) استدعاء المكتبة

import numpy as np

نستدعي المكتبة بالاختصار np لتسهيل كتابة الأوامر.

2) مصفوفة المعاملات

x + 3y = 5
x - 4y = -2
coef = np.array([[1, 3], [1, -4]])

نأخذ معاملات x و y فقط ونرتبها حسب كل معادلة.

3) مصفوفة الثوابت

cons = np.array([5, -2])

نكتب الأعداد الموجودة في الطرف الآخر من المعادلتين.

4) إيجاد الحل

sol = np.linalg.solve(coef, cons)

نستخدم linalg.solve لإيجاد قيم المتغيرات.

5) طباعة الحل

print(sol)

في النهاية نطبع الناتج لمعرفة قيمة كل متغير.

الكود كاملًا

import numpy as np coef = np.array([[1, 3], [1, -4]]) cons = np.array([5, -2]) sol = np.linalg.solve(coef, cons) print(sol)
القفل الثاني

اختياري من متعدد

أجب عن أسئلة القاعدة العامة للحل. يجب الحصول على الإجابة الصحيحة في كل بطاقة.

1) ما الطريقة الصحيحة لتحديد مصفوفة الثوابت للنظام التالي؟
x + 3y = 5
x - 4y = -2
2) ما الطريقة الصحيحة لكتابة مصفوفة المعاملات للمعادلة الخطية؟
15x + 4y = 10
3) ما الطريقة الصحيحة لاستدعاء مكتبة NumPy واختصارها باسم np؟

✨ ممتاز

تم فتح القفل الثاني، وهذا هو الرقم الثاني من الشفرة.

7
القفل الأخير

أكمل الفراغ وصحح الخطأ

هذه المرحلة الأخيرة قبل ظهور الشفرة النهائية. أجب عن التحديات التالية بدقة.

السؤال 1: أكمل الفراغات بالسحب والإفلات لتكوين الكود الصحيح
3x + y = 5
x + 2y = 4
coef = np.array(اسحب هنا) cons = np.array(اسحب هنا)
[[3, 1], [1, 2]]
[5, 4]
[[5, 4], [3, 1]]
[1, 2]
[3, 1]
السؤال 2: أكمل الفراغات بالسحب والإفلات لاختيار سطر الحل الصحيح
sol = اسحب هنا(اسحب هنا)
np.linalg.solve
coef, cons
np.solve
cons, coef
np.array.solve
السؤال 3: حدد كل الأخطاء الموجودة في البرنامج التالي
import numpy as x coef = np.Array([[1, 4], [103, 32]]) cons = np.array([1, -1]) result = np.linalg.solve(cons, coef) print(result)

🏆 تم فك الشفرة بنجاح

أحسنت! لقد اجتزت جميع المراحل وأعدت تشغيل نظام المختبر.

273
اسم الجائزة: جائزة بطل الشفرة

أول طالب يصل إلى الشفرة النهائية يفوز بـ جائزة بطل الشفرة.

🏆 لوحة الفائز بجائزة بطل الشفرة
  1. بانتظار أول فائز...