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

계열의 합계 2/3 – 4/5 + 6/7 – 8/9 + … 최대 n항

<시간/>

시리즈는 각 숫자 뒤에 오는 몇 가지 공통된 특성을 가진 숫자의 시퀀스입니다. 수학에는 합산 논리 또는 수학 공식으로 정의된 다양한 계열이 있습니다. 이 문제에서 일련의 숫자 2/3 , -4/5 , 6/7 , -8/9 , …..

급수의 일반 항은 (-1)n *(2*n)/ ((2*n)+1)

로 정의할 수 있습니다.

급수의 합을 찾으려면 주어진 급수의 각 요소를 다음과 같이 추가해야 합니다. 2/3 - 4/5 + 6/7 - 8/9 + …

예를 들어 보겠습니다.

Input: 10
Output: -0.191921

설명

(2 / 3) - (4 / 5) + (6 / 7) - (8 / 9) + (10 / 11) - (12 / 13) + (14 / 15) - (16 / 17) + (18 / 19) - (20 / 21) = -0.191921


Input: 17
Output: 0.77152

설명

(2 / 3) - (4 / 5) + (6 / 7) - (8 / 9) + (10 / 11) - (12 / 13) + (14 / 15) - (16 / 17) + (18 / 19) - (20 / 21) = 0.77152

예시

#include <iostream>
using namespace std;
int main() {
   int n = 17,i = 1;
   double res = 0.0;
   bool sign = true;
   while (n > 0) {
      n--;
      if (sign) {
         sign = !sign;
         res = res + (double)++i / ++i;
      } else {
         sign = !sign;
         res = res - (double)++i / ++i;
      }
   }
   cout << "The sum of the given series is "<< res;
   return 0;
}

출력

The sum of given series is 0.77152