c++利用函数计算圆周率
时间: 2024-09-17 07:04:03 浏览: 45
在C++中,虽然并没有内置的函数可以直接提供圆周率π的精确值,但你可以通过数值近似的方法如马青公式、莱布尼茨级数等来估算。这里我们以著名的马青公式为例,它是一种计算圆周率的算法,通常用于教学和基础编程练习:
```cpp
#include <iostream>
#include <cmath>
double calculatePi(int n) {
double numerator = 4.0;
double denominator = 1.0;
double pi = 0.0;
for (int i = 0; i <= n; ++i) {
pi += numerator / denominator;
if (i % 2 == 0) {
numerator *= -1; // 奇数项乘以(-1)
} else {
denominator *= i + 1; // 偶数项乘以(i+1)
}
}
return pi * 4.0 / (2 * n + 1); // 优化后的公式,减少误差
}
int main() {
int precision = 100000; // 要求的精度,越大越接近真实值
double approx Pi = calculatePi(precision);
std::cout << "Approximation of Pi with " << precision << " terms is: " << Pi << std::endl;
阅读全文