登录论坛

查看完整版本 : [求助]如何用MATLAB模拟抛硬币和掷筛子的过程??以n为参变量


zxcvbnm1
2008-04-30, 22:28
如何用MATLAB模拟抛硬币和掷筛子的过程??以n为参变量
麻烦各位帮帮忙写个程序!非常感谢~!

要求是这样的:
利用"连续型均匀分配变量"的知识;
抛硬币和掷筛子N次,N是parameter-参(变)量;
生成概率p,以及相应曲线图.
对代码进行简单解释......
(对于抛硬币,生成的概率P是得到正面(HEAD)的概率----P(h)
)

如果这样开头
head=0; %结果统计 初始化为0
n=input('times\n'); %由用户输入抛硬币的次数
p = zeros(1,n); %预定义p的长度以避免其成员数在循环体中增长
for i=1:n %抛硬币,循环操作

接着怎么写啊??:'( :'(
或者各位高手有别的写法可否告知?感激!

fgabertb
2008-05-01, 00:35
給你一個想法

回圈內的演算法如下


1. 硬幣
生成一個均勻亂數來自 uniform(0,1) 姑且叫做t

如果t<=0.5 則叫正面 如果t>0.5 則叫反面


2. 骰子
生成一個均勻亂數來自 uniform(0,1) 姑且叫做t
如果
t<=1/6 表示骰出 "1"
1/6<t<2/6 表示骰出 "2"
2/6<t<3/6 表示骰出 "3"
3/6<t<4/6 表示骰出 "4"
4/6<t<5/6 表示骰出 "5"
5/6<t 表示骰出 "6"

以上弄出來是"一次" 要做很多次 再用迴圈包起來就好了

你會用到的函數 rand~ 以上~:smile: