این برنامه عددی بین ۱ تا ۸۰ را از کاربر دریافت کرده و یک الگوی لوزیشکل از کاراکترهای * چاپ میکند.
الگو شامل دو بخش است:
- مثلث بالایی که از ۱ تا n سطر دارد
- مثلث پایینی که از n-1 تا ۱ سطر دارد
در هر سطر، فاصلههای اولیه و تعداد ستارهها بهصورت پویا تنظیم میشوند تا شکل لوزی حفظ شود.
# دریافت عدد n از کاربر
n = int(input("عدد n را وارد کنید (بین ۱ تا ۸۰): "))
# بررسی اعتبار عدد
if 1 <= n <= 80:
# مثلث بالایی
for i in range(n):
row = ' ' * (n - i - 1)
row += '*'
if i > 0:
row += ' ' * (2 * i - 1) + '*'
print(row)
# مثلث پایینی
for i in range(n - 2, -1, -1):
row = ' ' * (n - i - 1)
row += '*'
if i > 0:
row += ' ' * (2 * i - 1) + '*'
print(row)
else:
print("عدد واردشده باید بین ۱ تا ۸۰ باشد.")
*
* *
* *
* *
* *
* *
* *
* *
*
- ابتدا عدد n از کاربر دریافت میشود
- مثلث بالایی با استفاده از فاصلههای چپ و فاصله بین ستارهها ساخته میشود
- مثلث پایینی بهصورت معکوس از سطر n-2 تا ۰ ساخته میشود
- در هر سطر، اگر فقط یک ستاره باشد، فاصله وسط حذف میشود