Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++에서 이항 계수의 제곱합

<시간/>

이항 계수는 파스칼 삼각형의 형태로 배열될 수 있는 이진 정리에서 발견되는 인용입니다. nCr과 동일한 숫자의 조합입니다. 여기서 r은 다음 공식을 보여주는 n개의 항목 집합에서 선택됩니다.

nCr=n! / r!(n-r)!
or
nCr=n(n-1)(n-2).....(n-r+1) / r!

이항 계수의 제곱의 합, 즉(n C0 ) 2 + (n C1 ) 2 + (n C2 ) 2 + (n C3 ) 2 + ……… + (n Cn-2 ) 2 + (n Cn-1 ) 2 + (n Cn ) 2

Input :n=5
Output:252

설명

이 프로그램에서 먼저 n 세트에서 선택된 r의 이항 계수를 찾은 다음 각 계수를 제곱하고 합해야 위의 방정식에서 공식을 유도하거나 각 숫자의 계승 함수를 사용하여 합계를 얻을 수 있습니다. 그래서 우리는 주어진 방정식에 대해 r 및 r을 전달하고 추가하면 솔루션을 얻을 수 있습니다.

예시

#include <iostream>
using namespace std;
int fact(int n){
   int fact = 1, i;
   for (i = 2; i <= n; i++){
      fact *= i;
   }
   return fact;
}
int main(){
   int n=5;
   int sum = 0;
   int temp=0;
   for (int r = 0; r <= n; r++){
      temp = fact(n)/(fact(r)*fact(n-r));
      sum +=(temp*temp);
   }
   cout<<sum;
   return 0;
}

출력

252