主题:随机函数的问题?难呀!还是运行不出来!
purplefly
[专家分:0] 发布于 2006-03-01 22:12:00
抛掷一个正方体均匀木块,该木块有三面是红色、二面是蓝色、一面是绿色,仅记木块落地后向上一面的颜色,编程序模拟这个实验过程,并打印出每次的结果和经过500次实验后向上一面出现的各种颜色的次数。
大家能帮我写下程序吗?感谢呀!
我老是运行不出来!
回复列表 (共4个回复)
沙发
purplefly [专家分:0] 发布于 2006-03-01 22:16:00
有朋友说这样做:随机数范围是0-1,然后你取随机结果0-0.5为红色(3/6=1/2),0.5-0.8333333为蓝色(2/6=1/3),0.83333333-1为绿色,用if判断大小。然后输出各种颜色即可。
这样设置的依据是等概率事件。
但是我觉得:能不能把随机函数乘以六,让他扩大来做!这样就不涉及到概率的问题了!
板凳
飞鸟12 [专家分:2830] 发布于 2006-03-01 22:24:00
当然 乘六是可以的
3 楼
purplefly [专家分:0] 发布于 2006-03-01 22:37:00
你能帮我写一下吗?
我老是运行不出来!
4 楼
moz [专家分:37620] 发布于 2006-03-02 10:53:00
唉,我天生是当枪手的命。
dim a(3)
randomize timer
color 7,0
cls
for i=1 to 500
locate 1,1
select case int(rnd*6)
case 0,1,2
color 4,0
print "红色"
a(1)=a(1)+1
case 3,4
color 1,0
print "蓝色"
a(2)=a(2)+1
case 5
color 2,0
print "绿色"
a(3)=a(3)+1
end select
color 7,0
print "红色有";a(1);"次"
print "蓝色有";a(2);"次"
print "绿色有";a(3);"次"
next
我来回复