بخشی از مجموعه

چندین نمونه کد

~2 دقیقه مطالعه • بروزرسانی ۱۴ مهر ۱۴۰۴

شرح برنامه

این برنامه عددی بین ۱ تا ۸۰ را از کاربر دریافت کرده و یک الگوی لوزی‌شکل از کاراکترهای * چاپ می‌کند.
الگو شامل دو بخش است:
- مثلث بالایی که از ۱ تا 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 = 5:


     *
    * *
   *   *
  *     *
 *       *
  *     *
   *   *
    * *
     *

توضیح مراحل:

- ابتدا عدد n از کاربر دریافت می‌شود
- مثلث بالایی با استفاده از فاصله‌های چپ و فاصله بین ستاره‌ها ساخته می‌شود
- مثلث پایینی به‌صورت معکوس از سطر n-2 تا ۰ ساخته می‌شود
- در هر سطر، اگر فقط یک ستاره باشد، فاصله وسط حذف می‌شود


نوشته و پژوهش شده توسط دکتر شاهین صیامی