- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在制作一款游戏,目前正在研究随机掉落系统。
我计划创建一个随机 ID,这反过来又是项目的设计。如果我将相同的 ID 两次传递给 createItem 函数,它应该会创建完全相同的项目。
无论如何。当我创建 ID 时,我计划使用输入来让一些敌人更频繁地掉落某个元素。例如,假设函数看起来像这样:
void randID(int level, int diff, float wepChance, float armChance);
如果我在调用函数时将 wepChance 设置为 10% (0.1),我真的希望它有 10% 的几率掉落武器。如何将此输入与 rand()
和 srand()
一起使用? srand 是如何工作的(除了创建种子之外没有发现任何其他东西)。
我想我可以编写自己的代码使它真的成为 10% 的机会,但是我可以使用 srand 来获得相同的结果吗?
最佳答案
srand
不会帮你解决这个问题。
如果您希望某事发生的概率为 10%,请使用如下内容:
int x = rand();
bool hasOccurred = (x < (RAND_MAX * 0.1));
这不会是 正好 10%,因为 RAND_MAX
可能不会正好除以 10,但我想它对您的应用来说已经足够接近了。
关于c++ - 生成项目和使用 srand,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11591168/
这个问题在这里已经有了答案: What‘s the difference between srand(1) and srand(0) (7 个答案) 关闭 8 年前。 srand(0) 和 sran
我刚刚发现 srand(1) 将 C(++) 的 PRNG 重置为调用 srand 之前的状态(如reference)。但是,种子 0 似乎也这样做,或者任何调用 srand 之前的状态似乎使用种子
是否允许 srand(0) 与 srand(1) 具有相同的效果? C11, 7.22.2.2 srand 函数(强调): The srand function uses the argument a
如标题所示……可以将srand用作Flash的Math.random吗? 我问是因为我想以可重复的方式生成伪随机数。 最佳答案 不。但是过去我曾用BitmapData.noise()作为穷人的替代品。
但它总是给我 42 作为 SIZE。我想用 srand(time(NULL)) 随机化 SIZE 但显然它不起作用,因为它低于 SIZE 的随机化。当我尝试在 SIZE 随机化之前添加它时,编译器对我
关闭。这个问题需要details or clarity .它目前不接受答案。 想改进这个问题?通过 editing this post 添加详细信息并澄清问题. 1年前关闭。 Improve this
我不明白 srand() 的含义在创建一个随机数。这是我的代码: /* srand example */ #include /* printf, NULL */ #include
我创建了一个选择排序算法。我想用各种输入来测试我的程序。 在不实际输入每个数组元素的情况下,如何使用操作数组的算法实现排序、反向排序和随机数组(固定长度[即 100,000])以用于测试目的? 最佳答
这个问题是关于这个问题中的评论的 Recommended way to initialize srand?第一条注释表示 srand() 在应用程序中只能调用一次。为什么会这样? 最佳答案 这取决于您
这个问题是关于这个问题中的评论的 Recommended way to initialize srand?第一条注释表示 srand() 在应用程序中只能调用一次。为什么会这样? 最佳答案 这取决于您
这个问题是关于这个问题中的评论的 Recommended way to initialize srand?第一条注释表示 srand() 在应用程序中只能调用一次。为什么会这样? 最佳答案 这取决于您
这个问题是关于这个问题中的评论的 Recommended way to initialize srand?第一条注释表示 srand() 在应用程序中只能调用一次。为什么会这样? 最佳答案 这取决于您
这个问题已经有答案了: 已关闭10 年前。 Possible Duplicate: Recommended way to initialize srand? 在c中使用srand()时遇到以下问题。
我已经用 C++ 实现了 RSA 算法,程序运行正常,但是 srand 调用使程序变慢了。我使用 srand 生成了两个质数和加密 key (e)。这是片段 ...................
谁能解释一下 srand 到底做了什么。我知道它与函数 rand 相关,并且输入 srand 函数的值是一个种子值,但这个种子值究竟如何影响 rand 函数? 最佳答案 在带有特定参数的 srand
#include #include using namespace std; int main () { srand(5); int r = rand() % 100 co
这个问题在这里已经有了答案: srand() — why call it only once? (7 个答案) C program - srand() [duplicate] (6 个答案) Rec
所以我正在制作一个选择排序程序,我必须在其中输入两个值:一个用于数组中使用的数字,另一个用于随机数生成器的种子。我对如何调整使用的数量有点困惑,因为我们可以放入的最大元素数量是 15。数组目前有 8
我正在制作一款游戏,目前正在研究随机掉落系统。 我计划创建一个随机 ID,这反过来又是项目的设计。如果我将相同的 ID 两次传递给 createItem 函数,它应该会创建完全相同的项目。 无论如何。
我将 srand() 与固定种子一起使用,我需要在一次执行中使用一组不同的种子(例如 100、200、300、...、1000)运行测试。这可能吗?问题是 srand() 定义在 main 的开头,所
我是一名优秀的程序员,十分优秀!