ﻻ يخفى على الجميع بأن الهدف الأساسي للبرمجة هو إختصار الوقت و القيام بالمهام التي تصيبنا بالملل من القيام بها،كأن تعيد حساب معدلات التلاميذ في المدرسة كلها…أليس ذلك شيء صعب و ممل في نفس الوقت؟
سهلت الحواسيب من حياتنا اليومية بشكل كبير جدا بحيث أصبحت تقوم بتلك المهام عوضا عنا و في وقت وجيز جدا جدا و بالتالي زادت اﻹنتاجية الكلية مما ساعد ﻻحقا في تطوير تكنولوجيات جديدة.
تستطيع الحواسيب القيام بآﻻف العمليات في الثانية الواحدة و ذلك عن طريق تليقنها طريقة القيام بها لمرة واحدة فقط و جعلها تعيد تنفيذ تلك الخطوات مرارا و تكرارا عن طريق ما يعرف بالحلقات التكرارية.
تخيل معي أن اجهزة الحاسوب تقوم بحساب معدﻻت التلاميذ بنفس الطريقة التي سيقوم بها الموظف المسؤول عن ذلك(بطريقة يدوية) هنا ﻻ توجد أية فائدة تذكر من صناعة الحواسيب أصلا في اعتقادي.
في بايثون يوجد نوعان من الحلقات التكرارية هما For و While و لكن ما الفائدة من وجود نوعين ألا يكفي نوع واحد فقط؟ بالطبع ﻻ و ستعرف السبب اﻵن:
تكتب الحلقة التكرارية While كالتالي:

while و هي الكلمة المفتاحية،condition أو الشرط الذي بتحققه تبدأ الحلقة التكرارية في الدوران،للعلم فإنه في كل دورة للحلقة التكرارية يتم التحقق من الشرط و هل هو متحقق أم ﻻ.

أما النوع الثاني من الحلقات  التكرارية في بايثون فهو الحلقة for و تكتب كالتالي:

الحلقة التكرارية for تقوم بالدوران على البيانات المعطاة و ﻻ تقوم بالتحقق من الشروط مثل الحلقة while إﻻ في حالة أننا طلبنا التحقق من شرط محدد عن طريق الأمر if و بالتالي فإن اﻹختلاف بين الحلقتين التكراريتين في بايثون هو أن الحلقة while تعتمد في عملها على التحقق من شرط محدد مسبقا في حين أن الحلقة for تقوم بالدوران فقط و القيام بما طلبه المبرمج.
في المثال المعطى فإن الحلقة for ستقوم بالدوران على كل عنصر من عناصر السلسلة series بحيث أنها ستقوم بإنشاء متغير تحت إسم var و تقوم بأخذ أول عنصر من السلسلة series و تعطيه إسم var و تكمل الدورة،ثم مع العنصر الثاني من السلسلة و تعطيه اسم المتغير var و هكذا دواليك حتى تقوم بإنهاء كل العناصر الموجودة في السلسلة series.

في مثالنا السابق،أي الحلقتين التكراريتين سنستخدم لحساب معدﻻت كل التلاميذ في المدرسة؟
أترك لكم المجال للبحث و التنقيب،دمتم بود،سلام

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

Fill out this field
Fill out this field
الرجاء إدخال عنوان بريد إلكتروني صالح.
You need to agree with the terms to proceed

هذا الموقع يستخدم Akismet للحدّ من التعليقات المزعجة والغير مرغوبة. تعرّف على كيفية معالجة بيانات تعليقك.