C++算法求 π 的值
作者:野牛程序员:2023-12-25 11:56:24 C++阅读 2710
使用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
