القائمة الرئيسية

الصفحات

الاخبار[LastPost]

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

غلاف الدرس السادس من سلسلة تعلم البرمجة

📚 سلسلة تعلّم البرمجة للمبتدئين
— الدرس 6 من 10
إذا فاتك الدرس السابق: الجمل الشرطية في Python: اجعل برنامجك يتخذ القرارات

تخيّل أن معلمك طلب منك كتابة «سأنتبه في الحصة» مئة مرة! الحاسوب يستطيع ذلك في جزء من الثانية، بشرط أن نعلّمه كيف يكرّر. في هذا الدرس نتعلم الحلقات التكرارية for وwhile، وهي من أقوى أدوات المبرمج.

لماذا نحتاج إلى التكرار؟

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

حلقة for مع range

نستخدم for عندما نعرف عدد مرات التكرار مسبقًا. والدالة range تولّد سلسلة من الأرقام.

for i in range(5):
    print("سأنتبه في الحصة")

سيطبع البرنامج العبارة خمس مرات. والمتغير i يأخذ في كل دورة قيمة جديدة: 0 ثم 1 ثم 2 ثم 3 ثم 4. لاحظ أن العدّ يبدأ من صفر وينتهي قبل الرقم المكتوب.

أشكال range المختلفة

الكتابةالأرقام الناتجة
range(5)0, 1, 2, 3, 4
range(1, 6)1, 2, 3, 4, 5
range(0, 11, 2)0, 2, 4, 6, 8, 10
range(10, 0, -1)10, 9, 8 ... 1

تطبيق: جدول الضرب

number = int(input("أي جدول ضرب تريد؟ "))
for i in range(1, 11):
    print(f"{number} × {i} = {number * i}")

ثلاثة أسطر فقط تطبع جدول ضرب كاملًا لأي رقم!

المرور على النصوص

حلقة for تستطيع المرور على أحرف النص حرفًا حرفًا:

word = "برمجة"
for letter in word:
    print(letter)

حلقة while

نستخدم while عندما لا نعرف عدد مرات التكرار، بل نريد الاستمرار ما دام شرط معيّن صحيحًا.

count = 1
while count <= 5:
    print(count)
    count = count + 1

تحذير مهم: إذا نسيت تحديث المتغير (السطر الأخير)، يبقى الشرط صحيحًا للأبد، وتدخل في حلقة لا نهائية. لإيقافها اضغط Ctrl + C.

تطبيق: لعبة تخمين الرقم

import random

secret = random.randint(1, 20)
guess = 0
tries = 0

while guess != secret:
    guess = int(input("خمّن رقمًا من 1 إلى 20: "))
    tries += 1
    if guess < secret:
        print("أكبر من ذلك")
    elif guess > secret:
        print("أصغر من ذلك")

print(f"أحسنت! عرفت الرقم في {tries} محاولات")

السطر import random يستدعي مكتبة جاهزة لتوليد الأرقام العشوائية. وtries += 1 اختصار لـ tries = tries + 1. لاحظ كيف جمعنا هنا المتغيرات والشروط والحلقات معًا.

التحكم في الحلقة: break و continue

  • break: يوقف الحلقة فورًا ويخرج منها.
  • continue: يتخطى بقية الدورة الحالية وينتقل إلى الدورة التالية.
for i in range(1, 11):
    if i == 7:
        break        # توقف عند 7
    if i % 2 == 0:
        continue     # تخطَّ الأعداد الزوجية
    print(i)         # يطبع 1 3 5

متى أستخدم for ومتى while؟

الحالةالأنسب
عدد التكرار معروف (10 مرات، كل حرف، كل طالب)for
التكرار حتى يحدث شيء (إجابة صحيحة، ضغط زر)while

تمرين لك

اكتب برنامجًا يحسب مجموع الأعداد من 1 إلى 100 باستخدام حلقة for. (الناتج الصحيح: 5050)

الخلاصة

الحلقات توفّر عليك آلاف الأسطر، وتجعل الحاسوب يعمل بدلًا منك. وفي الدرس القادم سنتعلم كيف ننظّم برامجنا في «وحدات» قابلة لإعادة الاستخدام، اسمها الدوال.

جرّب لعبة التخمين وأخبرنا: في كم محاولة عرفت الرقم؟

→ الدرس السابق: الجمل الشرطية في Python: اجعل برنامجك يتخذ القرارات
الدرس التالي: الدوال في Python: نظّم برامجك وأعد استخدام الكود ←

📚 فهرس السلسلة كاملة:

  1. ما هي البرمجة؟ ولماذا تتعلمها الآن؟
  2. كيف تختار أول لغة برمجة؟ مقارنة بين Python وJavaScript وغيرهما
  3. تجهيز بيئة البرمجة: من المتصفح إلى Python وVS Code
  4. المتغيرات وأنواع البيانات في Python: أول برامجك الحقيقية
  5. الجمل الشرطية في Python: اجعل برنامجك يتخذ القرارات
  6. الحلقات التكرارية في Python: for وwhile بأمثلة عملية (أنت هنا)
  7. الدوال في Python: نظّم برامجك وأعد استخدام الكود
  8. القوائم والقواميس في Python: تخزين البيانات وتنظيمها
  9. أساسيات HTML وCSS: ابنِ أول صفحة ويب بنفسك
  10. مقدمة في JavaScript ومشروع ختامي: ماذا بعد تعلم الأساسيات؟

تعليقات