随机数 std.random
¶
类¶
class RNG {
@public:
RNG(i32 seed);
RNG(i64 seed);
fn as int;
fn as float;
fn as bool;
}
函数(使用梅森旋转算法)¶
srand(i32 seed);
srand(i64 seed);
rand();
randf(); // 浮点随机数 [0,1] 均匀分布
randn(); // 浮点随机数 正态分布
rand[8,16,32,64]();
randf[32,64]();
randn[32,64]();
randb(); // 布尔随机数
randbits(usize n); // n 位随机数
fn randf() -> float {
return float rand / INT_MAX;
}
fn randn() -> float {
return sqrt(-2 * log randf) * cos(2 * PI * randf);
}