请完成函数double phi(double z),该函数计算并返回给定z时,z+z^3/3+z^5/(3*5)+…+z^1001/(3*5*7…*1001)
的值。公式中“z^3”表示z的三次方。例如, phi(0.3)=0.309164.
提示:如果直接求算式中各项的分子和分母,其值将会很快溢出。
输入样例
0.3
输出样例
0.309164
#include<iostream>
#include<stdio.h>
#include<cmath>
using namespace std;
double phi(double a)
{
double sum1=0;
double sum=a;
for(int i=3;i<=1001;i=i+2)
{
sum1=sum1+sum;
sum=sum*(pow(a,2)/i);
}
printf("%.6f",sum1);
}
int main()
{
double a;
cin>>a;
phi(a);
}