المناهج الدراسية
دورة: تكنولوجيا المعلومات والاتصالات ICT
تسجيل الدخول

المناهج الدراسية

تكنولوجيا المعلومات والاتصالات ICT

نص الدرس

الدرس 1 – مبادئ البرمجة بلغة بايثون Python وهياكل البيانات والخوارزميات

تكنولوجيا المعلومات والاتصالات ICT

الدرس 1 – مبادئ البرمجة بلغة بايثون Python وهياكل البيانات والخوارزميات

الدرس 1 – مبادئ البرمجة بلغة بايثون Python وهياكل البيانات والخوارزميات

الدرس 1 – مبادئ البرمجة بلغة بايثون Python وهياكل البيانات والخوارزميات

★ كتاب الشرح والتفصيل العلمي الشامل المعتمد ★

كتاب الشرح المفصل←مبادئ البرمجة بلغة بايثون Python وهياكل البيانات والخوارزميات الشرطية والتكرارية

| | 2026/2027 |

  • 🎯 أهداف التعلم والمخرجات التعليمية المقررة بالتفصيل:
  • • استيعاب المفاهيم الأساسية للغات البرمجة عالية المستوى ومميزات لغة بايثون Python.
  • • التعامل مع المتغيرات وأنواع البيانات الأساسية (int, float, str, bool) وهياكل البيانات (Lists, Tuples, Dictionaries).
  • • بناء الخوارزميات وجمل التحكم الشرطية (if, elif, else) وحلقات التكرار (for, while loops).
  • • كتابة الدوال البرمجية (Functions) وتتبع الأخطاء البرمجية وإصلاحها (Debugging).
  • 📖 المفاهيم والمصطلحات العلمية واللغوية الأساسية (Core Terminology):
وجه المقارنةالفكرة الأساسيةكلمات مفتاحية
🔹 لغة بايثون (Python Language)
  • لغة برمجة عالية المستوى
  • مفتوحة المصدر
  • سهلة القراءة والكتابة
  • مفسرة (Interpreted)
  • وتدعم البرمجة كائنية التوجه (OOP) وتعد اللغة الأوسع استخداماً عالمياً في الذكاء الاصطناعي وتحليل البيانات
برمجةعاليةالمستوىمفتوحة
🔹 الخوارزمية (Algorithm)
  • مجموعة مرتبة ترتيباً منطقياً من الخطوات الرياضية والتعليمات المحددة لحل مشكلة معينة أو إنجاز مهمة محددة
  • وتنسب للعالم المسلم محمد بن موسى الخوارزمي
مجموعةمرتبةترتيبامنطقيا
🔹 المتغيرات (Variables)أماكن محجوزة في ذاكرة الوصول العشوائي (RAM) للحاسب تحمل اسماً فريداً وتخزن قيمة قابلة للتغيير أثناء تشغيل البرنامج وفق نوع بياني محددأماكنمحجوزةذاكرةالوصول
🔹 القوائم (Lists)
  • هيكل بيانات ديناميكي في بايثون يسمح بتخزين مجموعة مرتبة من العناصر القابلة للتعديل والإضافة والحذف (Mutable)
  • وتوضع بين قوسين معقوفين `[ ]`
هيكلبياناتديناميكيبايثون
وجه المقارنةالفكرة الأساسيةمثالكلمات مفتاحية
🔹 القواميس (Dictionaries)
  • هيكل بيانات يعتمد على أزواج المفاتيح والقيم (Key-Value Pairs)
  • يتيح البحث السريع والاسترجاع الدقيق للمعلومات
  • ويوضع بين أقواس معقوفة `{ }`
—هيكلبياناتيعتمدأزواج
•⚖️ القوانين والنظريات والعلاقات الحاكمة (Governing Laws & Principles)—القوانينوالنظرياتوالعلاقاتالحاكمة
★ قاعدة التسمية للمتغيرات في بايثون
  • [ الصيغة: اسم المتغير يجب أن يبدأ بحرف أو شرطة سفلية (_) ولا يبدأ برقم
  • وحساس لحالة الأحرف (Case-sensitive)
  • ولا يحتوي على مسافات أو كلمات محجوزة (
  • def
  • class). ]
الصيغةالمتغيريبدأبحرف
★ الصيغة المنطقية للجمل الشرطية المركبة[ الصيغة: `if condition_1 and condition_2: do_action()` (تتحقق إذا كان الشرطان صحيحين معاً True) | `or` (تتحقق إذا كان أحدهما على الأقل True). ]—conditionactionتتحققالشرطان
  • ★ قانون التعقيد الزمني التكراري (Time Complexity – Big O) [ الصيغة: حلقة تكرار بسيطة تمر على مصفوفة بحجم $n$ تكون ذات تعقيد خطي $O(n)$، بينما حلقتان متداخلتان (Nested Loops) تكونان ذات تعقيد تربيعي $O(n^2)$. ]
  • 📌 الشرح التفصيلي المستفيض لكافة محاور الدرس:
  • ◄ أولاً بنية لغة بايثون وبيئة التشغيل ومفاهيم المتغيرات
  • تتميز لغة بايثون بتركيب لغوي بديع يحاكي اللغة الإنجليزية الطبيعية، مما يقلل التعقيد البرمجي ويجعلها لغة التعلم الأولى للمبتدئين ولغة البحث والتطوير المعتمدة لدى كبرى شركات التكنولوجيا كالذكاء الاصطناعي في جوجل وناسا.
  • ويقوم مفسر بايثون (Python Interpreter) بقراءة الأكواد سطراً بسطر وتحويلها إلى لغة الآلة الثنائية (Bytecode) وتنفيذها مباشرة.
  • تعتمد بايثون على التحديد التلقائي لنوع البيانات (Dynamic Typing)، حيث يتعرف المفسر على نوع المتغير فور إسناد القيمة له؛ كالأعداد الصحيحة `age = 16` (int)، أو الأعداد العشرية `gpa = 3.9` (float)، أو النصوص `name = “Ahmed”` (str)، أو القيم المنطقية `is_student = True` (bool).
  • شكل توضيحي (python_code_flowchart_and_algorithm.png): شكل (11): خريطة التدفق المنطقية (Flowchart) وبنية كود بايثون وهياكل البيانات البرمجية
  • ◄ ثانياً هياكل البيانات المتقدمة وإدارة الذاكرة
  • توفر بايثون هياكل بيانات مرنة وفائقة القوة لإدارة كميات ضخمة من المعلومات بكفاءة:1.
  • القوائم (Lists): تتيح تخزين أنواع مختلفة من العناصر `fruits = [“تفاح”, “موز”, “برتقال”]`، مع إمكانية التعديل والإضافة عبر دوال `append()` و `remove()` والوصول للعناصر عبر الفهرس (Index) الذي يبدأ من الصفر `fruits[0]`.2.
  • الصفوف (Tuples): هياكل مرتبة غير قابلة للتعديل (Immutable) وتوضع بين أقواس دائرية `( )`، وتستخدم لحماية البيانات الثابتة من التغيير العرضي كإحداثيات المواقع الجغرافية.3.
  • القواميس (Dictionaries): تمثل التجسيد البرمجي للجداول وتخزن البيانات بصيغة مفتاح وقيمة `student = {“id”: 101, “name”: “Mona”, “grade”: 98}`، مما يوفر وصولاً سريعاً للمعلومات عبر المفتاح دون الحاجة للبحث التتابعي.
  • ◄ ثانياً خوارزميات التحكم والمسارات الشرطية وحلقات التكرار
  • البرمجة ليست مجرد كتابة سطور، بل هي منطق اتخاذ القرار والتحكم في تدفق البرنامج (Control Flow).
  • ويتم ذلك عبر الجمل الشرطية `if … elif … else` المعتمدة على المحاذاة والمسافات البادئة (Indentation) التي تحدد نطاق الأكواد وبلوكات العمليات في بايثون كبديل للأقواس في اللغات الأخرى.
  • أما في إنجاز المهام المتكررة ومعالجة آلاف السجلات، فتستخدم حلقات التكرار:- حلقة `for loop`: للتكرار على مدى محدد أو عناصر قائمة `for i in range(1, 101): print(i)`.- حلقة `while loop`: لتكرار التنفيذ طالما ظل الشرط المنطقي صحيحاً (True)، مع ضرورة وجود شرط للتوقف وتحديث العداد لتجنب الدخول في حلقة لا نهائية (Infinite Loop) تجمد ذاكرة الجهاز.
  • ◄ رابعاً تصميم الدوال البرمجية (Functions) والحلول التكنولوجية المعاصرة
  • تعد الدوال البرمجية (Functions) الوسيلة الأساسية لتنظيم الأكواد وتطبيق مبدأ “عدم تكرار الكود” (DRY – Don’t Repeat Yourself)، حيث يتم تعريف الدالة باستخدام الكلمة المحجوزة `def` وتستقبل معاملات دخل (Parameters) وتعيد ناتج المعالجة باستخدام `return`.“`pythondef calculate_tax(salary): if salary > 10000: return salary * 0.15 else: return salary * 0.05“`
  • كما تسهم بايثون في ربط الأكواد بالذكاء الاصطناعي وتحليل البيانات عبر مكتبات شهيرة مثل NumPy للحسابات الرياضية، وPandas لإدارة الجداول، وTensorFlow لتدريب الشبكات العصبية العميقة.
  • 🧮 التطبيقات والمسائل النموذجية المحلولة بالخطوات (Step-by-Step Worked Examples):
وجه المقارنةالفكرة الأساسيةكلمات مفتاحية
مثال نموذجي 1تطبيق برمجي محلول بالخطوات رقم 1 – بناء خوارزمية وبرنامج فرز وتقدير الدرجاتتطبيقبرمجيمحلولبالخطوات
نص المسألة / السؤال
  • المطلوب: كتابة كود بايثون متكامل يستقبل درجة الطالب من المستخدم
  • ويتحقق من صحتها (بين 0 و 100)
  • ثم يطبع التقدير (ممتاز: >=85
  • جيد جداً: >=75
  • جيد: >=65
  • مقبول: >=50
  • راسب: <50).الكود وشرح الخطوات:“`python# 1. إدخال الدرجة وتحويلها لرقم عشريscore = float(input(“أدخل درجة الطالب: “))# 2. التحقق من النطاق المنطقي السليمif score < 0 or score > 100: print(“خطأ: الدرجة يجب أن تكون بين 0 و 100!”)elif score >= 85: print(“التقدير: ممتاز (Excellent) – مبارك التفوق!”)elif score >= 75: print(“التقدير: جيد جداً (Very Good)”)elif score >= 65: print(“التقدير: جيد (Good)”)elif score >= 50: print(“التقدير: مقبول (Pass)”)else: print(“التقدير: راسب (Fail) – يحتاج إعادة وتدعيم”)“`التحليل: الكود يستخدم جمل `elif` المتسلسلة لضمان التحقق خطوة بخطوة وتوفير الوقت والمعالجة فور تحقق الشرط الأول
المطلوبكتابةبايثونمتكامل
وجه المقارنةالفكرة الأساسيةكلمات مفتاحية
•💡 أسرار وتكات التفوق وملاحظات خبير المادة (Expert Notes & Exam Secrets)أسراروتكاتالتفوقوملاحظات
★ تكة برمجية
  • المسافات البادئة (Indentation) في بايثون إجبارية وليست اختيارية
  • والخطأ فيها يولد الخطأ الشهير `IndentationError`. والموصى به قياسياً استخدام 4 مسافات مسطرة
المسافاتالبادئةIndentationبايثون
★ سر تفوق
  • الفهرسة في بايثون تبدأ من الصفر `Index 0`
  • فإذا كانت القائمة تحتوي على 5 عناصر فإن فهرس العنصر الأخير هو 4
  • أو يمكن الوصول له مباشرة عبر الفهرس السالب `list[-1]`
الفهرسةبايثونتبدأالصفر
★ فخ مشهور
  • علامة المساواة المفردة `=` تستخدم لـ “الإسناد” (Assignment)
  • بينما المساواة المزدوجة `==` تستخدم لـ “المقارنة المنطقية” (Comparison)
علامةالمساواةالمفردةتستخدم
•🌍 التطبيقات الحياتية والصناعية والتكنولوجية (Real-World Applications)التطبيقاتالحياتيةوالصناعيةوالتكنولوجية
وجه المقارنةالفكرة الأساسيةكلمات مفتاحية
✔ مبادرة مصر الرقمية ورواد تكنولوجيا مصرتدريب مئات الآلاف من الطلاب والشباب على لغة بايثون والذكاء الاصطناعي التوليدي بالتعاون مع كبرى الشركات العالمية لبناء كوادر برمجة مؤهلة للعمل عن بعد والشركات العالميةتدريبمئاتالآلافالطلاب
✔ منصة بوابة مصر الرقميةاعتماد نظم قواعد البيانات والبرمجيات الحكومية المؤمنة لتقديم مئات الخدمات للمواطنين لا ورقياًاعتمادقواعدالبياناتوالبرمجيات
الدرس 1 – مبادئ البرمجة بلغة بايثون Python وهياكل البيانات والخوارزميات · 1 / 2