ألعاب خوارزميات الترتيب

من ويكي أضِف
مراجعة 18:51، 15 فبراير 2017 بواسطة Magdy (نقاش | مساهمات)
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)
اذهب إلى التنقل اذهب إلى البحث

مقدمة

لعبة الترتيب هى لعبة لتعريف الطلاب بمفهوم خوارزميات الترتيب بشكل عملي بعيدا عن المصطلحات الحوسبة المعقدة.

الأهداف

  1. تعليم الطلاب خوارزميات الترتيب (الترتيب الأنتقائى - ترتيب الفقاعات).

مهارات و معارف الطلاب اللازمة للاستفادة من الجلسة

  • القراءة
  • العد
  • المقارنة و المطابقة

الفئة العمرية

ست سنوات فأكثر

متطلبات اللعبة

مجموعة من الأوراق مرقمة بعدد الطلاب .

شرح اللعبة

تعرف هذه اللعبة الطلاب بمفهوم المتغيرات عن طريق استخدام صندوق له اسم محدد (" رقم الكوب التالي" أو "رقم العلبة التالية") ليكون بمثابة المتغير، و يقوم الطلاب بتنفيذ العمليات الأساسية للمتغيرات من قراءة لقيمة المتغير و تغيير لهذه القيمة على هذا الصندوق.

تنفيذ هذه اللعبة يحتاج إلى مجموعة من الطلاب. المطلوب من الطلاب هو التعرف على مكان كرة مخبأة في الجوار عن طريق العثور عن الورقة التي تصف مكان الكرة بين الأوراق الموضوعة في الحاويات المختلفة. تلعب اللعبة بأن يفتح الطالب الأول الصندوق الذي يمثل المتغير و الذي يسمى "رقم الكوب التالي" و يقرأ الورقة الموضوعة فيه. إذا كانت الوريقة تحمل رقم كوب، يلقيها الطالب في السلة ثم يرفع الكوب المشار إليه ويأخذ الورقة الموضوعة اسفله (أو في داخله) و يضعها كما هي بدون فتحها بدلا من الورقة الأولى في الصندوق المسمى "رقم الكوب التالي" ثم يترك الدور للطالب الذي يليه. يتوالى الطلاب في تنفيذ نفس الخطوات السابقة، كل في دوره، حتى الوصول إلى الوريقة الوحيدة التي لا تحمل رقم كوب و هي الوريقة التي تصف أين توجد الكرة. يراعى في توزيع الطلاب على مجموعات اللعب ألا يزيد عدد الطلاب في كل مجموعة عن خمسة و لا يقل عن اثنان بحيث يتطلب الوصول إلى الوريقة المطلوبة أن يقوم كل طالب بتنفيذ الخطوات السابقة أكثر من مرة.

يمكن أن يُبلغ الميسر الطلاب بأسم الصندوق الصحيح أو أن يترك للطلاب تخمين اسمه، حيث أن تركهم ليخمنوا اسم الصندوق يؤكد على اهمية تسمية المتغيرات بأسماء واضحة تعبر عن محتواها، و إن كان هذا قد يشكل بعض الصعوبة للطلاب الأصغر سنا. إذا لم يبلغ الميسر الطلاب بأسم الصندوق الصحيح، فعليه أن يوضح الهدف من ذلك في شرح المفاهيم.

تعتمد اللعبة على القواعد البسيطة التالية:

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

الخطوات

  1. يعد الميسر مكان (أو أماكن) اللعب عن طريق وضع الحاويات (الأكواب، على سبيل المثال) على طرف من الطاولة مع وضع الوريقات داخل كل منها بترتيب مناسب و وضع الصناديق على الطرف الأخر. كذلك يضع الميسر الوريقة الأولى و التي تشكل مفتاح اللعبة في الصندوق المسمى "رقم الكوب التالي".
  2. يوزع الطلاب على مجموعات بحيث لا يقل عدد المجموعة عن إثنان و لا يزيد عن خمسة.
  3. تقف كل مجموعة على شكل طابور.
  4. يشرح الميسر للطلاب الهدف من اللعبة و كيفية اللعب و قواعده.
  5. ينفذ الطالب الأول في الطابور الخطوات المطلوبة ثم يقف في نهاية الطابور، ثم يتبعه الذي يليه فالذي يليه و هكذا كل في دوره حتى الوصول إلى الوريقة المطلوبة.
  6. متى عرف الطلاب مكان الكرة، يحضرونها.

ملحوظة: يمكن استبدال الكرة بحلوى كهدية للطلاب.

خطوات شرح المفاهيم

  1. يسأل الميسر كيف استطاع الطلاب تمييز الصندوق الذي يحتوي على الوريقات.
  2. يستمع إلى إجابات الطلاب و يوضح أننا استطعنا تمييز الصندوق عن طريق أسمه، و يؤكد على ضرورة أن يكون لكل صندوق اسم لا يتكرر على أي من الصناديق الباقية بحيث نستطيع أن نميزه عنهم، كما يؤكد على أهمية أن يكون هذا الاسم معبرا عن محتوى الصندوق حتى لا يختلط الأمر علي الطلاب و يبحثون عن الوريقة في صندوق خطأ.
  3. يسأل الميسر الطلاب إذا ما كان الصندوق قد احتوى على نفس القيمة في الأدوار المختلفة.
  4. يشير الميسر إلى أنه على الرغم من أن في كل دور استخدم الطالب نفس الصندوق، إلا أنه احتوى على رقم مختلف و بالتالي أشار إلى كوب مختلف.
  5. يسأل الميسر الطلاب عن من كان يقوم بتغيير محتوى الصندوق و يشير إلى أن الطلاب انفسهم هم من كانوا يقومون بتغيير المحتوى.
  6. يشير الميسر إلى ان لغات البرمجة تدعم أشياء تقوم بنفس دور الصندوق في اللعبة، و يطلق عليها اسم المتغيرات، و إلى أننا سنتعلم كيف نستفيد من استخدام هذه المتغيرات في برامجنا.
  7. يوضح الميسر أن المتغير ما هو إلا مكان في ذاكرة الحاسوب يستخدم لحفظ بيان أو معلومة، بالضبط كما استخدمنا الصندوق لحفظ رقم الكوب التالي. و أننا كما استطعنا قراءة الورقة الموضوعة داخل الصندوق، فإننا نستطيع معرفة القيمة المحفوظة في الذاكرة.
  8. يوضح الميسر أنه يجب أن يكون لكل متغير من المتغيرات اسم مميز يشار به إليه، بالضبط كما أشار اسم "رقم الكوب التالي" إلى الصندوق الذي استخدمناه في اللعبة. و يؤكد على أن اسم المتغير يجب ألا يتكرر حتى نستطيع أن نحدد إلى أي متغير نشير بدون لبس. بالإضافة إلى ذلك يوضح أن من المهم (و إن كان ليس ضروريا) أن يكون اسم المتغير يدل على محتواه.
  9. يوضح أننا نستطيع تغيير قيمة المتغير عن طريق وضع قيمة جديدة فيه، بالضبط كما قام كل طالب منهم في دوره بوضع وريقة جديدة في الصندوق.

ختام اللعبة

يختم الميسر اللعبة بتلخيص ما تم تعلمناه من خلال اللعبة و هو:

  1. المتغير هو مكان في ذاكرة الحاسوب يستخدم لحفظ بيان أو معلومة.
  2. لكل متغير اسم مميز يشار به إليه، و أنه لا يمكن أن يحمل متغيران أو أكثر نفس الأسم بشكل يحدث لبس في فهم إلى أي متغير نشير.
  3. يفضل أن يشار إلى كل متغير بأسم دال على محتواه.
  4. من الممكن قراءة قيمة المتغير أو استبدالها بأخرى.

تنويعات على اللعبة

تنويعة للتركيز على أهمية تسمية المتغيرات بأسماء مميزة

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

في هذه الحالة، يكون على كل طالب إبلاغ الطالب الذي يليه باسم الصندوق الذي وَضَع فيه الوريقة، حتى يستطيع هو أيضا القيام بدوره في اللعبة.

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

يلاحظ كذلك أن هذا التعديل يؤكد على أهمية وجود أسماء مميزة للمتغيرات على حساب التركيز على أهمية تسمية المتغيرات بأسماء تعبر عن محتواها.

قراءات و تدريبات إضافية

  1. http://www.programmingbasics.org/ar/beginner/variables.html
  2. http://arccn.net/?p=14
  3. https://www.khanacademy.org/math/algebra-basics/core-algebra-expressions/core-algebra-variables-and-expressions/v/what-is-a-variable