1. 程式人生 > >4-16 遞迴求簡單交錯冪級數的部分和 (10分)

4-16 遞迴求簡單交錯冪級數的部分和 (10分)

本題要求實現一個函式,計算下列簡單交錯冪級數的部分和:

f(x,n)=x−x2+x3−x4+⋯+(−1)n−1xn f(x, n) = x - x^2 + x^3 - x^4 + \cdots + (-1)^{n-1}x^nf(x,n)=xx2+x3x4++(1)n1xn

函式介面定義:

double fn( double x, int n );

其中題目保證傳入的n是正整數,並且輸入輸出都在雙精度範圍內。函式fn應返回上述級數的部分和。建議嘗試用遞迴實現。

裁判測試程式樣例:

#include <stdio.h>

double fn( double x, int n );

int main()
{
    double x;
    int n;

    scanf("%lf %d", &x, &n);
    printf("%.2f\n", fn(x,n));

    return 0;
}

/* 你的程式碼將被嵌在這裡 */

輸入樣例:

0.5 12

輸出樣例:

0.33
double fn(double x, int n)
{
    double result;


    if (n == 0 || n == 1)
        result = x;
    else
        result = x - x*fn(x, n-1);
    return result;
}