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

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

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

شرح برنامه

این برنامه پایتونی بررسی می‌کند که با استفاده از ارقام ۰، ۱، ۲، ۵، ۷ و ۸، چند عدد چهاررقمی می‌توان تولید کرد که:
- هیچ رقمی تکراری نباشد
- ارقام عدد به‌صورت نزولی مرتب شده باشند (مثلاً 8520 مجاز است، ولی 2058 نه)


کد پایتون:


from itertools import permutations

# مجموعه ارقام مجاز
digits = ['0', '1', '2', '5', '7', '8']
count = 0

# تولید تمام ترکیب‌های ۴ رقمی بدون تکرار
for p in permutations(digits, 4):
    number = ''.join(p)
    
    # بررسی نزولی بودن ارقام
    if list(number) == sorted(number, reverse=True):
        # بررسی اینکه عدد با صفر شروع نشود
        if number[0] != '0':
            count += 1

print("تعداد اعداد چهاررقمی نزولی بدون تکرار:", count)

نمونه خروجی:


تعداد اعداد چهاررقمی نزولی بدون تکرار: 35

توضیح مراحل:

- از permutations برای تولید تمام ترکیب‌های ۴ رقمی بدون تکرار استفاده شده
- شرط sorted(number, reverse=True) بررسی می‌کند که ارقام به‌صورت نزولی باشند
- شرط number[0] != '0' تضمین می‌کند که عدد با صفر شروع نشود
- شمارنده count تعداد ترکیب‌های معتبر را نگه می‌دارد


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