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

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

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

شرح برنامه

این برنامه مجموعه‌ای از اعداد را دریافت کرده و تمام ترکیب‌های سه‌تایی ممکن را بررسی می‌کند.
هدف این است که مشخص شود آیا هر سه عدد می‌توانند اضلاع یک مثلث باشند یا نه.
برای این منظور، از شرط نامساوی مثلثی استفاده می‌کنیم:
برای هر سه عدد a, b, c باید داشته باشیم:
\[ a + b > c,\quad a + c > b,\quad b + c > a \]


کد پایتون:


from itertools import combinations

def is_valid_triangle(a, b, c):
    return a + b > c and a + c > b and b + c > a

def find_valid_sets(numbers):
    valid = []
    for combo in combinations(numbers, 3):
        if is_valid_triangle(*combo):
            valid.append(combo)
    return valid

# اجرای برنامه
nums = list(map(int, input("اعداد را با فاصله وارد کنید: ").split()))
valid_sets = find_valid_sets(nums)

print(f"تعداد مجموعه‌های معتبر: {len(valid_sets)}")
for s in valid_sets:
    print(f"مجموعه معتبر: {s}")

نمونه خروجی:


اعداد را با فاصله وارد کنید: 3 4 5 6 10

تعداد مجموعه‌های معتبر: 4  
مجموعه معتبر: (3, 4, 5)  
مجموعه معتبر: (3, 5, 6)  
مجموعه معتبر: (4, 5, 6)  
مجموعه معتبر: (5, 6, 10)

توضیح مراحل:

- ابتدا تمام ترکیب‌های سه‌تایی از لیست اعداد تولید می‌شود
- هر ترکیب با شرط نامساوی مثلثی بررسی می‌شود
- ترکیب‌هایی که معتبر باشند در خروجی نمایش داده می‌شوند


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