使用C++,求pi的近似值

使用C++,求pi的近似值,第1张

才疏学浅,你的程序好多看不到,我挑主要的for循环中的说:

#include "iostream"

#include "mathh"

using namespace std;

void main()

{

int n = 1;

double P = 0, pi;

for(n=1;pow((2n-1),(-1))>pow(10,(-7));n++) //pow()的返回值是double的,1/n返回的应该是取整的数吧,那就应该是0了。还有条件应该是大于,要不根本不循环下去。

{

P+=(pow((-1),(n+1))pow((2n-1),(-1)));

}

pi = P4;

cout << pi << endl;

}

#include<stdioh>

#include<mathh>//开根号我用了数学库函数

int main()

{

double Pi=2,x=0,t;//我把第一项2作为Pi的初始值

while(1)

{

x=sqrt(x+2);//x是分母

t=2/x;//t是现在要乘的数

Pi=Pit;

if(t-1<1e-14) break;//因为t一定大于1,就这么写了;精确到小数点后14位

}

printf("%14lf\n",Pi);//小数点后14位

return 0;

}

#include<stdioh>

#include<mathh>

#include <iostream>

using namespace std;

double proc(double eps)

{

int i;

double pi=00,t=1;

for(i=1;;i++)

{

if(t>=eps)

{

pi=pi+t;

t=ti/(2i+1);

}

else break;

}

return (2pi);

}

void main()

{

double s;

printf("Enter a precision:\n");

//scanf("%f\n",&s);

cin>>s;

//printf("%f",proc(s));

cout<<proc(s);

}

算法应该没问题,我把输入输出改成了c++的形式就有输出结果了,你试一下吧 。可能是c语言的输入输出格式不支持你写的形式吧。

以上就是关于使用C++,求pi的近似值全部的内容,包括:使用C++,求pi的近似值、用C语言编程计算π的值、看一下这个求pi的C程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10106322.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存