الخوارزميات و هياكل البيانات التحدي الثالث - حل التمرين الخامس بلغة بايثون

المطلوب

أكتب برنامج مهمته رسم الشكل التالي بواسطة الحلقات.
عند تشغيل البرنامج, يجب أن يطلب من المستخدم إدخال عدد أسطر و أعمدة الشكل الذي سيتم رسمه.
إنتبه: يجب أن يدخل المستخدم عددين أكبر من صفر, لأن عدد أسطر و أعمدة الرسمة لا يمكن أن يكون صفر أو أقل من صفر.


الحل بلغة بايثون

الطريقة الأولى لحل التمرين.

n = 0
while n <= 0:
    n = int(input("Enter the height: "))

m = 0
while m <= 0:
    m = int(input("Enter the width: "))

for i in range(1, n+1):

    if i == 1 or i == n:
        print('*' * m)

    else:
        print("*", end='')
        print(' ' * (m - 2), end='')
        print("*")
		

الطريقة الثانية لحل التمرين و الحصول على نفس النتيجة.

n = 0
while n <= 0:
    n = int(input("Enter the height: "))

m = 0
while m <= 0:
    m = int(input("Enter the width: "))

for i in range(1, n+1):

    if i == 1 or i == n:
        for j in range(1, m+1):
            print('*', end='')
        print()

    else:
        print("*", end='')
        for k in range(1, m-1):
            print(' ', end='')
        print("*")
		

الطريقة الثالثة لحل التمرين و الحصول على نفس النتيجة.

n = 0
while n <= 0:
    n = int(input("Enter the height: "))

m = 0
while m <= 0:
    m = int(input("Enter the width: "))

i = 1
while i <= n:

    if i == 1 or i == n:
        j = 1
        while j <= m:
            print('*', end='')
            j += 1
        print()

    else:
        print("*", end='')
        k = 1
        while k < m - 1:
            print(' ', end='')
            k += 1
        print("*")

    i += 1
		

سنحصل على النتيجة التالية إذا قام المستخدم بإدخال الرقم 5 كطول المستطيل و الرقم 10 كعرض المستطيل عند التشغيل.

Enter the height: 5
Enter the width: 10
**********
*        *
*        *
*        *
**********
		

و سنحصل على النتيجة التالية إذا قام المستخدم بإدخال الرقم 10 كطول المستطيل و الرقم 5 كعرض المستطيل عند التشغيل.

Enter the height: 10
Enter the width: 5
*****
*   *
*   *
*   *
*   *
*   *
*   *
*   *
*   *
*****
		

الدورات

أدوات مساعدة

أقسام الموقع

دورات
مقالات كتب مشاريع أسئلة