المعرفةُ
السؤالُ الأولُ: ما الخوارزميّةُ؟ وما عناصرُها الأساسيةُ؟
الإجابة
الخوارزميّةُ : هي مجموعةٌ منَ التعليماتِ أوِ الخطواتِ المنطقيَّةِ والمنظَّمةِ التي تُحدِّدُ كيفيَّةَ حلِّ مشكلةٍ معيَّنةٍ أوْ إنجازِ مهمةٍ محدَّدةٍ. وتعتبر جزءاً أساسياً من عالم البرمجة الحاسوبية،حيث يتم استخدامها للقيام بعمليات عديدة مثل البحث في قواعد البيانات أو إجراء الحسابات.
عناصرُها الأساسيةُ:
المدخلات : معطيات المشكلة
مجموعة القواعد والتعليمات :إجراءات العمل لحل المشكلة
المخرجات :ظهور الحل
السؤالُ الثاني: أوضحُ مفهومَ مسار التحكُّمِ معَ ذكرِ مثالٍ.
الإجابة
(مسار التحكم في الخوارزمية): يقصد به تصميم خطوات الخوارزمية او الطريقة والترتيب الذي سوف يتم من خلاله تنفيذ الخطوات بشكل منطقي ومتسلسل لضمان الوصول الى الحل المطلوب.والذي من خلاله ايضا يتم التحكم في تتابع الخطوات واتخاذ القرار المناسب اعتمادا على المدخلات والشروط الواجب تحققها لمتابعة العملية.
مثال: عملية تحضير الشاي
يجب وضع الماء بالابريق
ثم غلي الماء
اضافة كيس الشاي في الكوب
صب الماء في الكوب
السؤالُ الثالثُ: ما أهميةُ استخدامِ الخوارزمياتِ في حلِّ المشكلاتِ؟
الإجابة:
- حلُّ المشكلاتِ المعقدةِ: تساعدُ الخوارزمياتُ في تقسيمِ المشكلاتِ الكبيرةِ والمعقدةِ إلى خطوات أصغرَ وأسهلَ للفهمِ، ممّا يسهلُ معالجتَها.
- تحسينُ الحلولِ: تُمكِّنُ الخوارزمياتُ منَ الوصولِ إلى حلولٍ مُثلى أوْ قريبةٍ منَ المُثلى؛ ممّا يعزِّزُ كفاءةَ النتائجِ وجودتَها.
- أتمتةُ المهامِّ: تعملُ الخوارزمياتُ على أتمتةِ العملياتِ المتكررةِ والمعقدةِ؛ ممّا يوفرُ الوقتَ والجهدَ ويقللُ منَ الأخطاءِ البشريةِ.
- تعزيزُ السرعةِ والدقةِ: تمكّن الخوارزمياتُ الحواسيبَ منْ تنفيذِ مهامَّ بسرعةٍ ودقةٍ فائقةٍ مقارنةً بالبشرِ، خاصةً في العملياتِ الحسابيةِ والبحثِ.
- تنظيمُ التفكيرِ: تعززُ الخوارزمياتُ التفكيرَ المنهجيَّ والمنطقيَّ؛ مما يساعُد المبرمجينَ على تصوِّرِ المشكلاتِ وفهمِها بوضوحٍ قبلَ حلِّها.
- التكيفُ معَ مجالاتٍ متعددةٍ: تُستخدمُ الخوارزمياتُ في مجالاتٍ مثلَ الرياضياتِ، والهندسةِ، والذكاءِ الاصطناعيِّ، وتحليلِ البياناتِ؛ لتحسينِ العملياتِ واتخاذِ القراراتِ بناءً على معطياتٍ دقيقةٍ.
- التنظيمُ وتوحيدُ العملياتِ: توفرَ الخوارزمياتُ أسلوبًا موحّدًا للبرمجةِ؛ مما يجعلُ تنفيذَ العملياتِ بشكلٍ موحّدٍ أكثرَ سهولةً ويسرًا.
المهاراتُ
السؤالُ الأولُ: أكتبُ خوارزميةً لحلِّ مشكلةٍ بسيطةٍ، مثلِ حسابِ متوسطِ مجموعةٍ منَ الأرقامِ.
الإجابة:
إبدأ
أدخل الأرقام المراد إيجاد المتوسط لها
قم بعد الأرقام المراد حساب المتوسط لها وتخزينه داخل المتغير (c)
قم بعملية جمع الأرقام المدخلة وتخزين الناتج داخل المتغير (Sum)
قم بعملية قسمة المتغير (Sum) على المتغير (c) وتخزين الناتج في المتغير (M)
اطيع الناتج (M)
إنه
السؤالُ الثاني: أصفُ مشكلةً يمكنُ حلُّها عنْ طريقِ تطبيقاتِ الحاسوبِ، وأقدمُ خوارزميةً لحلِّها
الإجابة
مشكلةالبحث عن موقع عنصر معين(منتج،علامة،اسم طالب،...) موجود في داخل قائمة (مصفوفة).
الحل:
1.أبدأ من أول عنصر موجود في القائمة (المصفوفة)
2.أقارن العنصر الحالي مع العنصر المطلوب ايجاده
3.اذا تطابقا،أقوم بإرجاع موقع العنصر (مثلا رقم السطر ،رقم العمود، رقم السجل ،..)
4.اذا لم يتطابقا، أنتقل الى العنصر التالي في القائمة
5.أكرر الخطوة 2 الى أن يتم ايجاد العنصر المطلوب او الوصول الى نهاية القائمة (المصفوفة)
6.أذا لم أجد العنصر المطلول بعد المرور على كل القائمة، أطبع عبارة "غير موجود"
7.أنه
السؤالِ الثالثِ: أقدمُ مثالًًا على مشكلةٍ معقدةٍ، ثمَّ اعملُ على تجزئةِ خطواتِ حلِّها إلى خطواتٍ
أصغرَ.
الإجابة
المشكلة: إنشاء موقع للمدرسة يسمح بالتسوق عبر الانترنت من المقصف المدرسي
تجزئة الخطوات:
1.تحديد الوظائف الرئيسة(واجهة المستخدم ،تسجيل الدخول،سلة المشتريات،نظام الدفع)
2.تقسيم كل وظيفة الى مهام أصغر،
مثلاً: واجهة منتجات المقصف:
- تصميم قاعدة بيانات
- اضافة خيار البحث والتصفية
- اضافة خيار ترتيب المنتجات حسب(السعر،النوع،...
وذات العمليات تتم بالنسبة ل سلة المشتريات،آلية الدفع،إدارة المستخدمين حيث يتم تقسيم كل وظيفة الى مها أصغر.
3.يتم اختبار كل جزئية لوحدها على اكثر من نوع من الاجهزة مثل
- شكل واجهة المستخدم
- التاكد من حفاظ سلة المشتريات على محتوياتها وعدم ضياعهم عند تحديث الصفحة
- اختبار عملية الدفع
4.اجراء عملية اختبار للموقع بشكل متكامل