如何使用 C 实现随机事件?????

发布于 科技 2024-06-26
14个回答
  1. 匿名用户2024-01-30

    采用随机数的函数。

  2. 匿名用户2024-01-29

    随机数可以与时间相关联,并且可以近似为“随机”。

  3. 匿名用户2024-01-28

    一般来说,计算机的随机数都是伪随机数,以真随机数(seed)为初始条件,然后采用某种算法进行迭代生成随机数,以下是两种方法:

    一般种子可以基于当前的系统时间,这完全是随机的,vb的种子就是系统时间。

    算法 1:将正方形带到中间方法。

    1) 将种子设置为 x0 和 mod 10000 得到 4 位数字 2) 平方得到一个 8 位数字(如果小于 8 位,则在前面加 0) 3) 取中间的 4 位数字得到下一个 4 位随机数 x14) 重复步骤 1-3 生成多个随机数。

    该算法的一个主要缺点是最终它会退化为 0,并且不能继续产生随机数。

    算法 2:线性同余生成器 (LCG)。

    1) 将种子设置为 x0, 2) 使用算法 x(n+1) = (a*x(n)+b) mod c 生成 x(n+1)。

    一般来说,C非常大,可以生成一个介于0和C-1之间的伪随机数,这种算法的缺点之一是会有循环。

  4. 匿名用户2024-01-27

    a=1,b=1

    b>=20) 不满意

    满足 B%3==1)。

    执行 b+=3; 则 b = 1 + 3 = 4

    因为有继续,直接进入下一个循环,下同)a=2,b=4

    b>=20) 不满意

    满足 B%3==1)。

    执行 b+=3; 那么 b = 4 + 3 = 7

    a=3,b=7

    b>=20) 不满意

    满足 B%3==1)。

    执行 b+=3; 则 b = 7 + 3 = 10

    a=4,b=10

    b>=20) 不满意

    满足 B%3==1)。

    执行 b+=3; 则 b = 10 + 3 = 13

    a=5,b=13

    b>=20) 不满意

    满足 B%3==1)。

    执行 b+=3; 则 b = 13 + 3 = 16

    a=6,b=16

    b>=20) 不满意

    满足 B%3==1)。

    执行 b+=3; 那么 b = 16 + 3 = 19

    a=7,b=19

    b>=20) 不满意

    满足 B%3==1)。

    执行 b+=3; 那么 b = 19 + 3 = 22

    a=8,b=22

    满足 B>=20)。

    break;

    break:显示 for 循环语句。 下一步是在 for(){ 之后执行语句。

    所以此时执行 printf,a 的输出值为 8

  5. 匿名用户2024-01-26

    通常,它是一个伪随机数,它通过种子生成一个伪随机数序列,然后从序列中取出数字作为随机数。

    当然,在一般应用中也有一些随机事件,例如发生某事的那一刻、AD设备上读取的噪声电压等。

    对伪随机数种子进行随机化,使得到的随机数更加不规则。

  6. 匿名用户2024-01-25

    事实上,随机数是非常困难的,计算机更多地使用伪随机数。 事实上,它是一个序列,有一个循环部分,但它只是以 ** 开头。 你可以去 OpenGroup 的 ** 查询 RAND 和 SRAND 的原理。

    收集系统噪声比伪随机数略强,但也不是随机数。

    要真正随机太难了,几乎所有你能想到的东西都不是完全随机的,甚至AD的信号都有数学模型,怎么可能是随机的。

  7. 匿名用户2024-01-24

    楼上基本上就是这个意思,你可以定义你的随机数。

  8. 匿名用户2024-01-23

    你的问题本身就是一个随机概率事件,不管你用C语言还是真实实验其实都是在生成随机事件,如果你不用C语言生成随机事件,你怎么能模拟这个过程呢?

    我明白了,也许房东说的是随机函数的效率,你是不是觉得随机函数加判断的效率太低了吧?

    诚然,C自带的随机函数不是最有效的,随机性也不是最大的,但它是最简单的算法,效率完全可以接受。

    如果想要效率更高,查找表格最有效的方法是创建一个周期足够大的随机数表,然后查找表格来实现它,例如,可以先创建一个表格。

    在实践中,应该先用一个熵足够大的随机数函数来建立一个足够大的**,保证每5个连续的元素之间没有相同的元素,然后初始化一个下标i=0,每次需要取出元素时,就用加大下标的方法。 目前没有比这种方法更有效的随机数,但这种方法有其自身的问题。 希望对房东有所帮助。

  9. 匿名用户2024-01-22

    尝试生成五个随机数,每次都不同:

    如果已经生成了相同的随机数,则再次生成随机数,直到它不同,并使用一个小数组作为标记来测试该数字是否已经生成。

    这有什么低效的?

  10. 匿名用户2024-01-21

    编写一个数组,在其中存储 1-15 个数字。

    然后对这个数组进行洗牌。

    然后拿前 5 个保证唯一。

    楼上的那个太好玩了。

  11. 匿名用户2024-01-20

    低 效?? 你从哪里开始? 多达 20 行**,还有什么是高效的??

  12. 匿名用户2024-01-19

    随机事件就像房东说的那样,比如抛硬币的例子,我们习惯性地把抛硬币时间称为“随机事件”。 但这是一个在这个事件发生之前就已经定义的事件,我们不知道下一次抛硬币会给我们带来多大的冲击力,也不知道周围物理环境的影响。 当我们抛硬币时,从那一刻起,硬币的哪一面会上升是不可避免的。

    因为宇宙中的一切都有一条法则要遵循。

    我们的生活中有很多随机事件,比如你走路时脚下一步会踩到哪里。 让你说一些随机数,你不知道接下来要说多少。 这是房东需要知道的绝对随机事件。

    以城市车祸为例,车祸难免每天都会发生,但究竟谁撞到谁,是随机的、偶然的。 对于具体的撞车事件,从两辆车无法避免的那一刻起,就是必然事件,但这种“必然性”却毫无意义,不仅因为它存在的时间太短,更是因为它没有实际意义将其引入生活。 总的来说,这次坠机是一个随机事件。

    我们无法确定事件的条件,也无法得出事件何时尚未发生的结论的事件称为随机事件。当然,物理学中的“下巴猫”是一个例外。

    未来是可以预测的,但细节是无法预见的。 在生活中,这也不是必需的。 】

  13. 匿名用户2024-01-18

    如果注定了,你不必去上班、工作或学习,在家里等待上帝的安排

  14. 匿名用户2024-01-17

    A、B、C至少有一次出现,即A发生或B发生或C发生,那么它可以用和事件来表示

    答案是:a b c

    不超过两次出现,即至少一次不发生,至少一次不发生:non-au non-bu non-c

    利用德摩根定律:non-au non-bu non-c = non-abc(non 是上面的条形图)。

    两种常用的排列方式:基本计数原理和应用。

    1、加法原理及分类计数方法:

    每个类中的每个方法都可以独立完成此任务; 两种不同类型的方法中的具体方法彼此不同(即分类不重复); 完成此任务的任何方法都属于某个类别(即,分类不丢失)。

    2、乘法原理及分步计数方法:

    任何步骤的方法都不能完成此任务,并且只有连续完成这 n 个步骤才能完成此任务; 每个步骤彼此独立计算; 只要一步到位,就对应的完成方法也不同。

相关回答
7个回答2024-06-26

如果你的编译器支持 C99 标准,那么使用 long long 来定义一个 64 位整数,这已经是一个很大的数字了! >>>More

7个回答2024-06-26

在源代码上更改它,但这种方法不是很有效。 >>>More

8个回答2024-06-26

#include

#include >>>More

18个回答2024-06-26

实际上,我不必循环 1,000 次,我有一个想法。 >>>More