作业帮 > 综合 > 作业

通过公式输出π的近似值,并输出

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/23 15:04:01
通过公式输出π的近似值,并输出
#include "stdio.h"
#include "math.h"
int main()
{
\x05int n;
\x05double sum=0;
\x05\x05for(n=1;fabs(sqrt(6*sum)-3.1415926)>1E-6;n++)//∑(n=1--∞)1/n*n=π*π/6
\x05\x05{\x05sum=sum+1.0/(n*n);}
\x05\x05printf("%lf",sqrt(6*sum));
\x05\x05return 0;
}
//就是类型转换的问题
#include "stdio.h"
#include "math.h"
int main()
{
\x05int n;
\x05double sum=0.0;
\x05\x05for(n=1;fabs(sqrt(6*sum)-3.1415926)>1E-6;n++)//∑(n=1--∞)1/n*n=π*π/6
\x05\x05{\x05sum=sum+1.0/((double)n*(double)n);} //事先就要把n的值转换为double
\x05\x05printf("%lf",sqrt(6*sum));
\x05\x05return 0;
}
结果
3.141592请按任意键继续...
再问: 谢谢,真的好了,可是为什么呢??要与1.0做除法,计算机不会自动将n变为double吗??
再答: 1.0/n*n,编译器会把结果截断成int