C++利用公式pi/4=1-1/3+1/5-1/7+、、、、、、求pi的近似值,直到最后一位的绝对值小于10的—8次方
2个回答
展开全部
刚写的,测试过了
==========================
#include <iostream>
#include<iomanip>
int main()
{
int i = 1; //分母,每次循环+2
int flag = 1; //符号,每次循环变号
double tmp; //存储每次的那一位,tmp = 1.0/i
double sum = 0.0; //存储和,循环结束后 sum = PI/4
do
{
tmp = 1.0/i; //计算每一位
sum = sum + flag * tmp; //求和得到pi/4
i = i + 2; //分母+2
flag = -flag; //作为符号,迭代一次后变号
}
while(tmp>0.00000001); //判断最后一位绝对值,以决定是否退出循环
std::cout.precision(8);//设置输出小数位数 8位
std::cout << "pi = " << sum * 4 << std::endl;
return 0;
}
=======运行结果========
pi = 3.1415927
==========================
#include <iostream>
#include<iomanip>
int main()
{
int i = 1; //分母,每次循环+2
int flag = 1; //符号,每次循环变号
double tmp; //存储每次的那一位,tmp = 1.0/i
double sum = 0.0; //存储和,循环结束后 sum = PI/4
do
{
tmp = 1.0/i; //计算每一位
sum = sum + flag * tmp; //求和得到pi/4
i = i + 2; //分母+2
flag = -flag; //作为符号,迭代一次后变号
}
while(tmp>0.00000001); //判断最后一位绝对值,以决定是否退出循环
std::cout.precision(8);//设置输出小数位数 8位
std::cout << "pi = " << sum * 4 << std::endl;
return 0;
}
=======运行结果========
pi = 3.1415927
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询