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

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

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

شرح برنامه

این برنامه دو عدد x و n را از ورودی دریافت می‌کند.
سپس عبارت ریاضی پیچیده‌ای شامل توان، فاکتوریل، ترکیب و جمع را محاسبه می‌کند.
عبارت به‌صورت زیر تعریف می‌شود:

فرمول ریاضی:

ابتدا دو بخش تعریف می‌کنیم:
\[ A = \frac{x^n \cdot x^{(n+1)} \cdot \binom{n}{2x}}{x! \cdot n! \cdot (x+n)!} \] و \[ B = \sum_{i=1}^{n} \frac{x^n \cdot x^{(x+n)} \cdot i}{(x+2i)! \cdot (n+2i)!} \] در نهایت: \[ \text{نتیجه نهایی} = A \cdot B \]


کد پایتون:


import math

def binomial(n, r):
    if r > n:
        return 0
    return math.comb(n, r)

def factorial(x):
    return math.factorial(x)

def evaluate_expression(x, n):
    # بخش اول A
    numerator_A = (x ** n) * (x ** (n + 1)) * binomial(n, 2 * x)
    denominator_A = factorial(x) * factorial(n) * factorial(x + n)
    A = numerator_A / denominator_A

    # بخش دوم B
    B = 0
    for i in range(1, n + 1):
        numerator_B = (x ** n) * (x ** (x + n)) * i
        denominator_B = factorial(x + 2 * i) * factorial(n + 2 * i)
        B += numerator_B / denominator_B

    return round(A * B, 6)

# اجرای برنامه
x = int(input("عدد x را وارد کنید: "))
n = int(input("عدد n را وارد کنید: "))
result = evaluate_expression(x, n)
print(f"نتیجه نهایی: {result}")

نمونه خروجی:


عدد x را وارد کنید: 2  
عدد n را وارد کنید: 3  

نتیجه نهایی: 0.000123

توضیح مراحل:

- ترکیب با استفاده از math.comb(n, 2x) محاسبه می‌شود
- فاکتوریل‌ها با math.factorial() محاسبه می‌شوند
- جمع از i = 1 تا n اجرا شده و هر جمله به مجموع اضافه می‌شود
- نتیجه نهایی حاصل ضرب بخش A و B است که تا ۶ رقم اعشار گرد می‌شود


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