gpt4 book ai didi

c - 通过赔率生成随机数

转载 作者:太空宇宙 更新时间:2023-11-04 06:00:40 28 4
gpt4 key购买 nike

我想向这个随机函数添加一个参数,代表返回 true 的几率例如 rand_num(80)将有 80% 的几率返回 true。

bool rand_num()             // randomize 0 or 1
{
int result =0;
srand(time(NULL));
result = (rand()%2);

return result;

}

谢谢。

最佳答案

所以两个人给出了相似的答案是简单的模组。两者都错了。正确版本:

bool randX(int X)
{
do {
int rnd = rand() & 127;
if (rnd < X) return true;
if (rnd >= X && rnd < 100) return false;
} while (1);
}

请注意,使用 mod 会不稳定,因为 rand() 的分布在任意 mod 上并不平滑。

关于c - 通过赔率生成随机数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19865366/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com