乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > C语言随机数如何生成既有正数又有负数的随机数?-excel随机负数,excel随机生成负数

C语言随机数如何生成既有正数又有负数的随机数?-excel随机负数,excel随机生成负数

作者:乔山办公网日期:

返回目录:excel表格制作


右键,设置单元格格式,”分类“选择”数字“,"小数位数”,填1,”负数“选择倒数第二个,黑色的-1234.0

C语言生成的随机数为无符号数,即都是正的。要想生成正负随机的,可以先通过模除限定返回,再减去对应的范围的中间值即可。

比如,要获取-1000~+1000范围的随机数,总的数量为2001个,这样就可以通过代码
rand()%2001 使得到的结果限制zd在0-2000范围,再减去1000, 结果就是-1000~+1000之间了。
写成代码就是
rand()%2001 - 1000;
提供一个可行公式 =-1^RANDBETWEEN(1,2)*RAND()
解释:
其中第一个RANDBETWEEN(1,2)函数生成大于1小于2的随机数,以此数作为-1的指数,那么所得结果可能是1也可能是-1,再乘以RAND()即可生成有正有负的随机数。
但值得注意的是该公式生成的正负随机数的绝对值都是大于0小于1的,如果有其他要求可以再乘以其他数和或取整函数,如:
生成-10到10的随机整数,公式为 =ROUNDUP((-1^RANDBETWEEN(1,2)*RAND())*10,0)

在A2单元格输入公式:

=RANDBETWEEN(-10,10)
B2单元格输入公式:
=IF(A2=0,A2+1,A2)
B2就是一个不等于0的、在-10与10之间的随机数了
同样的,把上面的A2单元格公式改为
=RANDBETWEEN(-15,10)/10
B2单元格就是一个不等于0的、在-1.5至1之间的随机数了

相关阅读

关键词不能为空
极力推荐

ppt怎么做_excel表格制作_office365_word文档_365办公网