这个表达式是如何工作的:Num*rand() / RAND_MAX
How does this expression work: Num*rand() / RAND_MAX?
这个表达式是如何工作的?
Num*rand() / RAND_MAX
例如,如果我用 7.7
替换数字,它会给我从 0.
到 7.
(double
( 的值。
rand(( 函数生成一个介于 0
和 RAND_MAX
之间的整数值。 所以rand()/RAND_MAX
在0 and 1
之间生成实际值。所以在下面的代码中,我们有
0 <= val <= n
,其中n
可以是整数或实数。
double val = n * rand()/RAND_MAX;
标记格林先生的答案,我发现当 n 是整数时,使用 double val = n * rand()/RAND_MAX;
时我会得到 0
的输出。但是,这可以通过稍微添加来解决:
double val = (double) n * rand()/RAND_MAX;
相关文章:
- 为什么我不能将 rand() 与数组的大小一起使用?
- 为什么新的随机库比std::rand()更好
- 为什么rand()的使用被认为是不好的
- C++使用 rand 定义函数语法
- 为什么 rand 不在我的代码中生成随机数?
- 为什么 CWE 认为 rand() 具有潜在危险
- 在 c++ 中,rand() 在执行有调试和不带调试的程序时生成不同的结果
- Rand() 没有显示随机数,请帮助我了解出了什么问题:)
- Rand()大小写开关在多次迭代后运行到无穷大
- rand()函数在特定问题中的工作
- 这是在传递 int num 时创建搜索函数的正确方法吗?使用链表库
- 为什么 someNumber = rand() & 100 + 1;不产生错误?
- 除了 rand() 之外,是否有任何随机生成器库,开发人员可以手动设置种子?
- 如何生成比用户使用 rand() 函数输入的数字大 5-10% 的数字?
- C++:此代码可以编译,但引发运行时检查失败 #2 - 围绕变量周围的堆栈'num'已损坏。发生
- rand()/RAND_MAX 函数每次打印 1
- C++ Python 循环"for i, num in enumerate(list):"版本
- 使用 rand() 和 srand() 有问题
- " rand()%3-1 " 在 C++ 中是什么意思?
- 这个表达式是如何工作的:Num*rand() / RAND_MAX