cb
codebamin
الفصل 4 · حلقات التكرار (For Loops)

تمارين تجميع النصوص برمجياً

عدّل هذا البرنامج:

name = 'World' line = '' for char in name: line = line + char print(line)

بحيث يضيف مسافة بعد كل محرف في المثلث، فيصبح الناتج هكذا:

W W o W o r W o r l W o r l d

رائع! عدّل البرنامج الآن بحيث تكون كل سطر مكتوبًا بالعكس، هكذا:

__no_auto_translate__ W oW roW lroW dlroW

ممتاز!

الكود من الشكل:

line = line + char

شائع جدًا، لذلك يسمح بايثون بكتابته بصورة مختصرة. السطر التالي يعني الشيء نفسه:

line += char

لاحظ أنه لا توجد صيغة مختصرة مماثلة للسطر line = char + line.

استخدم الآن += مع حلقة for لكتابة برنامج يطبع name وتحته خط، هكذا:

World -----

يجب أن توجد شرطة - واحدة مقابل كل محرف في name.

ممتاز جدًا!

وبالمناسبة، عندما لا تحتاج إلى استخدام متغير معين، فمن المعتاد تسمية ذلك المتغير _، مثل for _ in name:. هذا لا يغير طريقة تنفيذ البرنامج، لكنه يوضح للقارئ أنك لا تحتاج إلى قيمة المتغير.

لنجعل البرنامج أكثر أناقة. وسّعه بحيث يرسم صندوقًا حول الاسم، هكذا:

+-----+ |World| +-----+

أصبحت جيدًا في هذا! حان وقت تحدٍّ أصعب قليلًا. بدل أن نضع الاسم داخل صندوق، اجعل الاسم نفسه جزءًا من الصندوق. اكتب برنامجًا ينتج:

+World+ W W o o r r l l d d +World+

أحسنت! أصبحت الفكرة واضحة لديك بالفعل.

إذا أردت، يمكنك حل تحدٍّ إضافي اختياري أدناه. وإذا لم ترغب الآن، يمكنك الانتقال إلى الدرس التالي والعودة إلى هذا التحدي لاحقًا.

حاول كتابة برنامج يطبع name في خط قطري، مثل:

W o r l d

ممتاز جدًا! استمر بهذا المستوى.

solution.py
1
2
3
4
5
6
7
8
9
10
الطرفية (shell)
>>>