使用Rust计算圆周率

要使用 Rust 计算圆周率,可以使用蒙特卡罗方法。该方法通过在单位正方形中生成随机点,并计算落在单位圆内的点的数量来估计圆周率。

示例代码

运行这个程序需要添加randcrate依赖;rand是Rust的一个常用的随机数生成库,可用于生成伪随机序列;

use rand::Rng;

fn main() {
    let total_points = 1000000;
    let mut points_inside_circle = 0;

    let mut rng = rand::thread_rng();

    for _ in 0..total_points {
        let x = rng.gen_range(-1.0..1.0);
        let y = rng.gen_range(-1.0..1.0);
        if x * x + y * y <= 1.0 {
            points_inside_circle += 1;
        }
    }

    let pi_estimate = 4.0 * (points_inside_circle as f64) / (total_points as f64);
    println!("Estimated value of pi: {}", pi_estimate);
}

原创内容,如需转载,请注明出处;

本文地址: https://www.perfcode.com/p/calculate-pi-using-rust.html

分类: 计算机技术
推荐阅读:
Golang中 unreachable code 提示出现的原因 出现unreachable code提示,是因为有代码无论如何都不会被执行;
如何禁用VSCode后台自动更新 VSCode是我比较喜欢的IDE了,但它也会偷偷摸摸的下载更新并自动安装,而且频率非常高;我并不太喜欢软件在自己毫不知情的情况下自动完成更新,所以我决定禁止它的这种行为;
PyQt:使用QVBoxLayout实现垂直布局 所谓的布局,你可以理解为窗口上控件(部件)的排版方式;使用 Layout 进行布局,窗口上的部件能随窗口大小的变化而变化;在本文中,你将掌握在Python中使用 QVBoxLayout 来进行垂直布局;
Rust中unwrap和expect的区别 在 Rust 中,unwrap() 和 expect() 是 Option 和 Result 类型(也可能是其他类型)提供的方法,用于从这些类型中获取包含的值。它们的区别在于如何处理潜在的错误。
Python memoryview()函数 memoryview() 函数是一个内置函数,它返回一个memoryview对象,该对象可以用于在 Python 中访问二进制数据。
Linux下快速的重命名文件 在Linux系统下,不知道你们是怎么重命名文件的,虽然方法很多,但我这个绝对是最简单且最高效的,而且只有一条命令就可实现: