c++数据类型的问题

2、求
当n=100,a=0.5,x=-0.5时的值(精值到4位小数)

img

#include 
using namespace std;
int main()
{
    double k = 1;
    double n = 0;
    double j = 1;
    double a = 0.5;
    double x = -0.5;
    double sum = 0;


    for (n = 1;n <=100;n++)
    {


        j *= ((a * x) / k);
        sum = sum + j;
        a = a - 1;
        x = x * x;
        k *= n;

    }
    cout << sum + 1;
}

算上面的,我发现算到第三次的结果跟算到100次的结果是一样的,是不是数据类型不对

你这式子都没列对