여기서 우리는 주어진 급수의 합을 구하는 방법을 볼 것입니다. n의 값은 사용자가 제공합니다. 계승 함수를 만들어 이 문제를 해결할 수 있고 루프의 각 단계에서 계승을 얻을 수 있습니다. 그러나 계승 계산은 일반 덧셈보다 비용이 많이 드는 작업입니다. 다음 항목에서 이전 계승 용어를 사용할 것입니다. 3처럼! (3 * 2 * 1)이고 4입니다! 는 4 * 3입니다!. 따라서 3을 저장하면! 어떤 변수에, 우리는 그것을 사용하고 다음 계승을 쉽게 얻기 위해서만 다음 숫자를 추가할 수 있습니다.
알고리즘
sum_series_fact(n)
begin res := 0 denominator := 1 for i in range 1 to n, do denominator := denominator * i res := res + i / denominator done return res end
예시
#include<iostream> using namespace std; float series_result(int n) { float denominator = 1; float res = 0; for(int i = 1; i<= n; i++) { denominator *= i; res += float(i/denominator); } return res; } main() { int n; cout << "Enter number of terms: "; cin >> n; cout << "Result: " << series_result(n); }
출력
Enter number of terms: 5 Result: 2.70833
출력
Enter number of terms: 3 Result: 2.5