C++的题目:计算π与迭代法求平方根
我才开始学C,希望大神解答,两道题分别是:编程利用下式计算并输出π的值。(式中:n=10000)π/4=1-1/3+1/5-1/7+……+1/(4n-3)-1/(4n-1...
我才开始学C,希望大神解答,两道题分别是:
编程利用下式计算并输出π的值。(式中:n=10000)
π/4=1-1/3+1/5-1/7+……+1/(4n-3)-1/(4n-1)
已知平方根迭代公式xn+1=(xn+a/xn)/2,设初值x=a/2。编写程序输入a值计算其平方根。迭代的结束条件是x n+1-xn<10-15,结果要求输出15位有效位数. 展开
编程利用下式计算并输出π的值。(式中:n=10000)
π/4=1-1/3+1/5-1/7+……+1/(4n-3)-1/(4n-1)
已知平方根迭代公式xn+1=(xn+a/xn)/2,设初值x=a/2。编写程序输入a值计算其平方根。迭代的结束条件是x n+1-xn<10-15,结果要求输出15位有效位数. 展开
1个回答
展开全部
#include <iostream>
int main()
{
double pi = 0.0f;
int n = 10000;
for (int i = 1; i <= 4 * n - 1; i += 2)
{
if ((i / 2) % 2 == 0)
{
pi += 1.0 / i;
}
else
{
pi -= 1.0 / i;
}
}
pi *= 4;
std::cout << "π=" << pi << std::endl;
return 0;
}
#include <iostream>
#include <iomanip>
int main()
{
double a, x0, x1, f;
std::cout << "请输入一个非负数:";
std::cin >> a;
while (a < 0)
{
std::cout << a << "不能开平方!" << '\n';
std::cin >> a;
}
x1 = a / 2;
do {
x0 = x1;
x1 = (x0 + a / x0) / 2;
f = x1 - x0;
if (f < 0)f = -f;
} while (f > 1e-15);
std::cout << a << "的平方根=" << std::setiosflags(std::ios::fixed) << std::setprecision(8) << x1 << std::endl;
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询