计算1-1/3+1/5-1/7+…,直到最后一项的绝对值小于10-3(0.001)为止.(按四舍五入的方式精确到小数点后二位#include #include int main(){int i=1;\x05double x=1.0,sum=0;\x05do\x05{\x05\x05x*=(-1.0)*(2*i-3)/(2*i-1);\x05\x05i++;\
来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/06 01:27:21
计算1-1/3+1/5-1/7+…,直到最后一项的绝对值小于10-3(0.001)为止.(按四舍五入的方式精确到小数点后二位#include #include int main(){int i=1;\x05double x=1.0,sum=0;\x05do\x05{\x05\x05x*=(-1.0)*(2*i-3)/(2*i-1);\x05\x05i++;\
计算1-1/3+1/5-1/7+…,直到最后一项的绝对值小于10-3(0.001)为止.(按四舍五入的方式精确到小数点后二位
#include
#include
int main()
{
int i=1;
\x05double x=1.0,sum=0;
\x05do
\x05{
\x05\x05x*=(-1.0)*(2*i-3)/(2*i-1);
\x05\x05i++;
\x05\x05sum=sum+x;
\x05}while(fabs(x)>1e-3);
\x05printf("%.2f",sum);
\x05return 0;
}
为什么提交是不对呢,哪里错了
计算1-1/3+1/5-1/7+…,直到最后一项的绝对值小于10-3(0.001)为止.(按四舍五入的方式精确到小数点后二位#include #include int main(){int i=1;\x05double x=1.0,sum=0;\x05do\x05{\x05\x05x*=(-1.0)*(2*i-3)/(2*i-1);\x05\x05i++;\
x*=(-1.0)*(2*i-3)/(2*i-1);当i=3时,你的分母为3了,不是1;
x*=(-1.0)*(2*i-3)/(2*i-1);这句,当i=1时,x=1;i=2时,x=-1/3;i=3时,x=-1/3*(1/5)
x*=(-1.0)*(2*i-3)/(2*i-1);等价于x=x*(-1.0)*(2*i-3)/(2*i-1);
改成这样,
#include
#include
int main()
{
int i=1;
\x05double x=1.0,sum=0,k=1.0;
\x05do
\x05{
\x05\x05x=k/(2*i-1);
\x05\x05i+=2;
\x05\x05sum=sum+x;
\x05\x05k=-k;
\x05}while(fabs(x)>1e-3);
\x05printf("%.2f",sum);
\x05return 0;
};
你看行不