黑马程序员技术交流社区

标题: 关于随机数疑问 [打印本页]

作者: iOSNC    时间: 2015-7-15 22:19
标题: 关于随机数疑问
arc4random_uniform(3)意思是电脑随机给出3个数,请问如何控制我们想要的范围数呢?比如59到70之间的数!

作者: shorfng    时间: 2015-7-16 00:08
我也想知道啊。
作者: 陈祖杰    时间: 2015-7-16 00:14
百度一下 什么都能解决  
作者: 984326157    时间: 2015-7-16 00:46
求0到11的随机数,然后再加上59
作者: 欢子    时间: 2015-7-16 15:15
arc4random_uniform(70-59+1)+59
作者: 小蜗牛0519    时间: 2015-7-16 19:46

arc4random_uniform(m-n+1)+n      m-n之间的数
作者: OUT___Man    时间: 2015-7-16 20:46
同问。。。
作者: 小蜗牛0519    时间: 2015-7-16 21:53
小蜗牛0519 发表于 2015-7-16 19:46
arc4random_uniform(m-n+1)+n      m-n之间的数

对 n—m之间 没有注意
作者: 你说呢    时间: 2015-7-16 21:56
生成0-x之间的随机正整数 int value =arc4random_uniform(x + 1);  生成随机正整数  int value = arc4random()   通过arc4random() 获取0到x-1之间的整数的代码如下: int value = arc4random() % x;    获取1到x之间的整数的代码如下:  int value = (arc4random() % x) + 1;    最后如果想生成一个浮点数,可以在项目中定义如下宏: #define ARC4RANDOM_MAX      0x100000000    然后就可以使用arc4random() 来获取0到100之间浮点数了(精度是rand()的两倍),代码如下: double val = floorf(((double)arc4random() / ARC4RANDOM_MAX) * 100.0f);
作者: norwood    时间: 2015-7-16 23:31
arc4random_uniform(79-59+1)+59
括号里面可以解释为随机数个数即m—n+1,外面表示最小的随机数59即n
作者: zhaofeizlj    时间: 2015-7-17 00:27
我也想知道!!!!!!!!!!!
作者: 丁铭检    时间: 2015-7-17 16:31
这个你就继续往后看吧。。视屏后面会讲到。。。
作者: wxh794708907    时间: 2015-7-17 16:59
arc4random_uniform(n-m+1)+m 这是指m到n之间的数 例如你要59到70 就把m用59替换 n用70替换就可以了
作者: 杨远鹏    时间: 2015-7-17 21:37
要得到【m,n】范围,随机数=arc4random_uniform(n-m+1)+m
作者: 鲁枝权双元    时间: 2015-7-17 21:51
这个其实很简单啊
作者: pacio    时间: 2015-7-19 11:29
arc4random_uniform(n-m+1)+m




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2