如何用C语言得出派值,数学老师要求精确到小数点后十位!
4个回答
展开全部
#include <stdio.h>
int main(void)
{
int i;
int j;
double pi=0;
double temp;
for(i=0;i<1000;i++)
{
temp=1;
for(j=0;j<i;j++)
{
temp*=double(j+1)/(2*(j+1)+1);
}
pi+=temp;
}
printf("%0.10lf",2*pi);
return 0;
}
int main(void)
{
int i;
int j;
double pi=0;
double temp;
for(i=0;i<1000;i++)
{
temp=1;
for(j=0;j<i;j++)
{
temp*=double(j+1)/(2*(j+1)+1);
}
pi+=temp;
}
printf("%0.10lf",2*pi);
return 0;
}
更多追问追答
追问
编译失败啊,我用的是WIN-TC
追答
我用的是Visual Studio 2012,可以正常编译运行。TC的话我真的没有用过
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
设置变量类型起码为unsigned int类型,然后使用int的低30位保存小数,高2位保存3,精度可以很高
追问
不会用
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
PI=2cos(0);
这样可能会不太精确,你还可以用级数逼近
这样可能会不太精确,你还可以用级数逼近
追问
怎么用,我是新手?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |