2016-05-16 14 views
0

モンテカルロシミュレーション方法を使用して、10回のリスト内でイベントが3回発生する確率を調べようとしています。行。私は100万回の試練を行うつもりです。イベントが発生する確率は、いつでも31.43パーセントです。私が考えていることは、試行(b)を呼び出してネストしたループを作成するということです。条件1(rand値が.3143未満)の場合、インデックスの次の番号に移動し、その番号が.3143私は次の番号に移動します。これが起これば、私は七面鳥のチャンスに1を加えます。百万回の試行が終わると、私は七面鳥を100万で割って、イベントが3回連続して起こる確率を得ます。私の質問は、イベントが連続して3回発生するかどうかをどうすれば確認できますか?私が十分な情報を提供しなかったら私を許して、私はプログラミングに新しいです。イベントが3回連続して発生する確率Matlab、Monte Carlo Method

答えて

0

あなたは

r = rand(10,1); 

を定義するなら、あなたは、内側のforループを必要としません。あなたは

events = r<0.3143; 

を使用してイベントを検出することができますし、10倍にあなたがより多くの行の3つのイベントを持つことができること

Times = events; 
Times(3:end) = Times(3:end) + events(2:end-1); 
Times(3:end) = Times(3:end) + events(1:end-2); 

注意をすることによって、行に3以上ある場合、あなたは見つけることができます一度。あなたがはいまたは無回答に興味がある場合は、sum(Times>3)を使用してそこにいくつあるかを数えるか、any(Times)を使用してください。

関連する問題