C++实现Leibniz formula for π
时间: 2024-09-08 12:02:29 浏览: 49
在C++中,要实现莱布尼茨公式来近似π,你可以创建一个简单的循环,逐项计算并累加序列。下面是一个简单的示例:
```cpp
#include <iostream>
#include <cmath>
double pi_leibniz(int n) {
double pi = 0;
for (int i = 0; i <= n; ++i) {
int denominator = 2 * i + 1;
if (i % 2 == 0) { // 如果当前项是偶数,则取正值
pi += 1.0 / denominator;
} else { // 如果当前项是奇数,则取负值
pi -= 1.0 / denominator;
}
}
pi *= 4; // 将结果乘以4,因为原始公式是 4 * (1 - 1/3 + 1/5 - ...)
return pi;
}
int main() {
int terms_to_calculate = 1000; // 指定计算多少项
double estimated_pi = pi_leibniz(terms_to_calculate);
std::cout << "Estimated value of π with " << terms_to_calculate
<< " terms is approximately: " << estimated_pi << std::endl;
return 0;
}
```
运行这段代码,你将看到随着项数增多,π的估计值也越来越接近真实值。然而,要注意的是,尽管理论上级数收敛于π,但在实际应用中,为了获得足够准确的结果,通常需要计算数千甚至百万项以上。