首先说明一下,单纯用表达式是无法实现5次随机数构成5位数目标的。
以fortran代码做例子,说明用程序方法如何实现(感叹号后是说明):
integer m
real x
! 根据系统时间初始化随机数
! 保证每次产生不同随机序列
call random_seed()
! 产生首位数字,确保不为0
do while(m==0)
call random_number(x)
m=10x
end do
! 产生其余4位数字
do i=1,4
m=m10
call random_number(x)
m=m+10x
end do
! 输出
write(,) m
end
附图为代码和多次不同的5位数输出。
第1位可选1-9:9种,第2~5位均可选0-9:10种,共有9x10x10x10x10=9000组5位数。如:10000, 12345, 66666, 88888, ……,99999。先从最高位开始,由于首位不能为零所以有C(1,9)(注:1是上标,9是下标,下同)种可能,第二位由于可以取零,故有C(1,9)种可能,第三位有C(1,8)种可能,第四位有C(1,7)种可能,第五位有C(1,6)种可能,所以能组成5位数的总的排列数为:C(1,9)C(1,9)C(1,8)C(1,7)C(1,6)=27216阿森12级2013-02-04Excel 2007可以,在单元格里随意输入一个用0-9数字组成的五位数,在Excel 2007的编辑栏里就可以显示出这个五位数来了,希望我能帮助你解疑释惑。 追问: 我说的是由0-9所有数字组成的所有的五位数 , 就是从10000-99999 中间所有的数字 回答: 可以把10000到99999统统输入单元格里,在编辑栏里就可以显示这几个五位数了。输入之前,要单击“数据”功能区,再单击“数据有效性”按钮,在下拉菜单中选择“数据有效性”,在d出的对话框中设置为只输入10000-99999的五位数,希望我能帮助你解疑释惑。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)