C++算法求 π 的值
作者:野牛程序员:2023-12-25 11:56:24 C++阅读 2736
使用C++编写一个计算π值的简单算法可以是著名的蒙特卡洛方法。以下是一个示例代码,可以参考:
#include <iostream>
#include <cstdlib>
#include <ctime>
int main() {
std::srand(static_cast<unsigned>(std::time(nullptr)));
const int total_points = 1000000;
int inside_circle = 0;
for (int i = 0; i < total_points; ++i) {
double x = static_cast<double>(std::rand()) / RAND_MAX;
double y = static_cast<double>(std::rand()) / RAND_MAX;
double distance = x * x + y * y;
if (distance <= 1.0) {
inside_circle++;
}
}
double pi_estimate = 4.0 * static_cast<double>(inside_circle) / total_points;
std::cout << "估算的π值为: " << pi_estimate << std::endl;
return 0;
}此代码通过生成大量的随机点,并计算它们到原点的距离来估算π值。通过统计落在单位圆内的点的数量,然后使用这个比例来估算π值。请注意,生成的随机数质量可能不足以获得非常精确的结果。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892

