الحلقات المتداخلة
جزء من قسم Fundamentals في رحلة Python على Coddy. الدرس 41 من 77.
الحلقة المتداخلة هي حلقة داخل حلقة أخرى. تكمل الحلقة الداخلية جميع دوراتها لكل دورة واحدة من الحلقة الخارجية.
لنبدأ بحلقة متداخلة بسيطة لفهم المفهوم:
# الحلقة الخارجية
for i in range(3):
print(f"Outer loop iteration: {i}")
# الحلقة الداخلية
for j in range(2):
print(f" Inner loop iteration: {j}")عند تشغيل هذا الكود، سترى ما يلي:
Outer loop iteration: 0
Inner loop iteration: 0
Inner loop iteration: 1
Outer loop iteration: 1
Inner loop iteration: 0
Inner loop iteration: 1
Outer loop iteration: 2
Inner loop iteration: 0
Inner loop iteration: 1لاحظ أنه مع كل تكرار للحلقة الخارجية، تكمل الحلقة الداخلية جميع تكراراتها.
الآن دعونا نرى مثالاً عملياً - طباعة نمط بسيط:
# طباعة مستطيل من النجوم بحجم 2x3
for row in range(2): # صفان
line = ""
for col in range(3): # 3 أعمدة
line += "*"
print(line)
# المخرجات:
# ***
# ***تتحكم الحلقة الخارجية في عدد الصفوف التي نطبعها، وتقوم الحلقة الداخلية ببناء كل صف عن طريق إضافة النجوم.
التحدي
سهلاكتب كوداً يطبع نمط مستطيل من النجوم (*) باستخدام الحلقات المتداخلة.
يجب أن يقوم برنامجك بما يلي:
- قراءة عددين صحيحين:
rowsوcols - استخدام هيكل حلقات متداخلة لطباعة النمط
- يجب أن تنتقل الحلقة الخارجية عبر كل صف
- يجب أن تقوم الحلقة الداخلية ببناء كل صف بالعدد الصحيح من النجوم
- طباعة كل صف مكتمل
مثال: إذا كان الإدخال 3 صفوف و 4 أعمدة، يجب أن يكون المخرج:
****
****
****جرّب بنفسك
# الحصول على مدخلات الصفوف والأعمدة
rows = int(input())
cols = int(input())
# اكتب الحلقات المتداخلة هنا
# الحلقة الخارجية للصفوف
# الحلقة الداخلية للأعمدةيتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس Fundamentals
4المعاملات - الجزء الثاني
المعاملات المنطقية - الجزء الأولالمعاملات المنطقية - الجزء الثانيمراجعة - المنطق البسيطالمعاملات المنطقية - الجزء الثالثالمعاملات المنطقية - الجزء الرابع7حاسبة تقسيم الفاتورة
رسالة الترحيبالحصول على المدخلات2المتغيرات
الأرقامالنصوص (String)القيم المنطقية (Boolean)قواعد التسميةالمتغيرات الفارغةمراجعة - تهيئة المتغيرات8الحلقات التكرارية
حلقة Forحلقة Whileجملة Breakجملة Continueمراجعة - المضروب (Factorial)دالة Rangeالحلقات المتداخلةمراجعة - Dynamic Input3المعاملات - الجزء الأول
المعاملات الحسابيةمعامل باقي القسمةاختصارات العمليات الحسابيةمراجعة - العمليات الرياضية البسيطةمعاملات المقارنة6أساسيات الإدخال والإخراج
الإخراجالإخراج مع المتغيراتالإدخالتحويل الأنواعمراجعة - حتى 120مراجعة - صح أم خطأتدرّب بنفسك: مترجم Python عبر الإنترنت