在excel表格的单元格中,如何设置±20之间的随机数,要求如果是正数前面有+号,负数前面有-号

要求不出现0

第1个回答  2011-03-26
=if(rand()<0.5,"+","-")&20-int(rand()*20)追问

试了下果然可以,能具体为我讲解下吗?

追答

rand()产生一个0~1之间的随机小数,与0.5来进行比较,小于0.5输出+好,否则输出-号
20-int(rand()*20) 的意思是 int(rand()*20)产生一个0~19之间的数,20减去这个数就产生1~20之间的数.

追问

这个0.5还是不太理解,文科生,理解能力有限,海涵,呵呵

追答

0~1之间的随机小数,中间的数字就是0.5,以0.5为界刚好可以得到两个均分的组,小于0.5输出正号,大于0.5输出负号,也就实现了随机分组正负号.

本回答被提问者采纳
第2个回答  2011-03-26
用rand函数,下面是excel中关于该函数的说明:
返回大于等于 0 及小于 1 的均匀分布随机数,每次计算工作表时都将返回一个新的数值。
语法:RAND( )
说明:
若要生成 a 与 b 之间的随机实数,请使用:
RAND()*(b-a)+a
如果要使用函数 RAND 生成一随机数,并且使之不随单元格计算而改变,可以在编辑栏中输入“=RAND()”,保持编辑状态,然后按 F9,将公式永久性地改为随机数。
至于正数前面带+号,负数前面带—号,可以在单元格格式中设置正负数的显示方式即可。