Programming Basics SQL HTML CSS JavaScript Python C++ Java JavaFX Swing Problem Solving English English Conversations Computer Fundamentals Learn Typing

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

المطلوب

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


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

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

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: 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: ")) 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
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
*****
*   *
*   *
*   *
*   *
*   *
*   *
*   *
*   *
*****