rand()%30是什么意思?

rand()%30 、rand()%10 、是什么意思?

编程语言中rand()表示产生一个随机整数,%30将随机数限制在[0,30),%10表示只取0-9这10个自然数。以python为例,random.randint(0,30)产生0-30的自然数:


扩展资料:

python中random.randint(a,b)可以产生一个在区间[a,b)之间的随机整数。

python中random.random()可以产生随机浮点数,浮点数范围在0-1之间:

参考资料

python官方api文档

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-12-09

rand()是一个可以生成随机数的函数随机数,函数返回的随机数在0-RAND_MAX(32767)之间。

rand()%30结果是::随机数除以30后所得的余数 

rand()%10 结果是::随机数除以10后所得的余数

扩展资料:

随机数字

(1)生成随机数比较简单,=rand()即可生成0-RAND_MAX之间的随机数;(#define RAND_MAX 0x7fffu)

(2)如果要是整数,就用=int(rand()%10),表示0至9的整数,以此类推;

(3)如果要生成a与b之间的随机实数,就用=rand()%(b-a+1)+a,就能产生固定位数的整数了,以此类推;

注意:如果要使用函数rand()生成一随机数,并且使之不随单元格计算而改变,可以在编辑栏中输入“=rand()”,保持编辑状态,然后按F9,将公式永久性地改为随机数。

不过,这样只能一个一个的永久性更改,如果数字比较多,也可以全部选择之后,另外选择一个合适的位置粘贴,粘贴的方法是点击右键,选择“选择性粘贴”,然后选择“数值”,即可将之前复制的随机数公式产生的数值(而不是公式)复制下来。

随机字母

随机小写字母:=CHAR(INT(RAND()*26)+97);

随机大写字母:=CHAR(INT(RAND()*26)+65);

随机大小写混合字母:=CHAR(INT(RAND()*26)+if(INT(RAND()*2)=0,65,97));

有些情形下,我们需要生成一个不重复的随机序列。

比如:我们要模拟洗牌,将一副扑克牌去掉大小怪后剩下的52张打乱。

比较笨的方法是在1-52间每生成一个随机数后,检查该随机数是否出现过,如果是第一次出现,就放到序列里,否则重新生成一个随机数作检查。

在 excel worksheet里面用这种办法,会造成if多层嵌套,不胜其烦,在VBA里面做简单一些,但是效率太差,越到序列的后端,效率越差。

当然也有比较好的办法,在VBA里面,将a(1)-a(52)分别赋予1-52,然后做52次循环,例如,第s次生成一个1-52间的随机数r,将a(s)与a(r)互换,这样的话,就打乱了原有序列,得到一个不重复的随机序列。

VBA里这个算法是很容易实现的,但是,出于通用性和安全考虑,有的时候我们并不希望用VBA,我们来看看在worksheet里面如何利用内置函数实现这个功能。

参考资料:百度百科-随机函数

本回答被网友采纳
第2个回答  2018-12-12

rand()%30 ;表示获得一个30以内的随机数。

rand()%10表示获得一个10以内的随机数。

一、%是模运算,表示整除 右操作数 取余数。

二、rand()的用法  :

rand()返回一个从0到RAND_MAX的任意整数,RAND_MAX 是一个宏,可以修改,通常应该是0x7fff(32767)。

1、如果你要产生0~10的10个整数,可以表达为:

int N = rand() % 11;

2、如果要产生1~10,则是这样:

int N = 1 + rand() % 11;

3、通常rand()产生的随机数在每次运行的时候都是与上一次相同的,这是有意这样设计的,是为了便于程序的调试。

4、若要产生每次不同的随机数,可以使用srand( seed )函数进行随机化,随着seed的不同,就能够产生不同的随机数。

示例图:

扩展资料

一、取余运算符 (%):

一个表达式的值除以另一个表达式的值,返回余数。

result = number1 % number2

二、参数

1、result,任何变量。

2、number1、任何数值表达式。

3、number2,任何数值表达式。

说明:

取余(或余数)运算符用 number1 除以 number2 (把浮点数四舍五入为整数),然后只返回余数作为 result。例如,在下面的表达式中,A (即 result)等于 5。

本回答被网友采纳
第3个回答  2018-12-10

rand()%30就是随机数除以30后所得的余数,即随机产生0到29的随机数;

rand()%10就是随机数除以10后所得的余数,即随机产生0到9的随机数;

rand()是一个可以生成随机数的函数随机数,函数返回的随机数在0-RAND_MAX(32767)之间。

扩展资料:

rand函数不是真正的随机数生成器,而srand()会设置供rand()使用的随机数种子。

如果你在第一次调用rand()之前没有调用srand(),那么系统会为你自动调用srand()。

而使用同种子相同的数调用 rand()会导致相同的随机数序列被生成。

srand((unsigned)time(NULL))则使用系统定时/计数器的值作为随机种子。

每个种子对应一组根据算法预先生成的随机数,所以,在相同的平台环境下,不同时间产生的随机数会是不同的。

相应的,若将srand(unsigned)time(NULL)改为srand(TP)(TP为任一常量),则无论何时运行、运行多少次得到的“随机数”都会是一组固定的序列,因此srand生成的随机数是伪随机数。

参考资料:

百度百科—rand()

百度百科—rand函数

本回答被网友采纳
第4个回答  2018-12-09

rand()%30结果是:随机数除以30后所得的余数 。

rand()是一个可以生成随机数的函数随机数,函数返回的随机数在0-RAND_MAX(32767)之间。

而rand()%10 结果是:随机数除以10后所得的余数。

python中random.randint(a,b)可以产生一个在区间[a,b)之间的随机整数。

python中random.random()可以产生随机浮点数,浮点数范围在0-1之间:

扩展资料:

生成随机数rand函数的用法:

函数rand()是真正的随机数生成器,而srand()会设置供rand()使用的随机数种子。如果你在第一次调用rand()之前没有调用srand(),那么系统会为你自动调用srand()。而使用同种子相同的数调用 srand()会导致相同的随机数序列被生成。

srand((unsigned)time(NULL))则使用系统定时/计数器的值做为随机种子。每个种子对应一组根据算法预先生成的随机数,所以,在相同的平台环境下,不同时间产生的随机数会是不同的。

相应的,若将srand(unsigned)time(NULL)改为srand(TP)(TP为任一常量),则无论何时运行、运行多少次得到的“随机数”都会是一组固定的序列,因此srand生成的随机数是伪随机数。

本回答被网友采纳
相似回答