Re: [問題] 達成條件後停止亂數

看板MATLAB作者 (睡眠不足)時間9年前 (2015/02/02 21:46), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/2 (看更多)
※ 引述《d66o690 (d66o690)》之銘言: : 大家好~我是初學Simulink : 我建了一個模型,其中有一個子系統 : 我想要讓這個子系統的功能是,由亂數產生一個值,若這個值滿足後面條件就停止亂數 : 然後這把這個滿足條件亂數產生的值拉出來,再做其他運算 : 但是我苦惱了很久,不知道該如何在滿足條件後停止亂數,或是記憶滿足條件的亂數值 : 我有試過當滿足條件後用stop simulation : 但因為取得值後,我後面還要持續做運算,所以不能stop simulation : EX: : 設定亂數跑出x=1~10,當x+2 > 10時滿足,且把這時的x拉出去做其他運算 : 假設此時亂數跑出9,9+2滿足 >10的條件,然後我想要把值停在9,或把9記憶下來,用這個9做之後的運算 : 請問我該怎麼做? 懇請解惑,謝謝大家 因為不是很確定你的要求,如果純粹滿足條件後停止的狀況下可以用while迴圈和break 以你的例子當範例: while 1 x = rand()*10; if x+2 > 10 break; end end 這樣就會一直運算到滿足 x+2 > 10 這個條件後才會停止迴圈 或是直接把條件設為迴圈停止的條件 x = rand*10; % <--注意這邊要先設一個數字讓x有數值 while (x+2 <= 10) x = rand()*10; end -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.121.165.67 ※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1422884799.A.D69.html
文章代碼(AID): #1Kpt-_rf (MATLAB)
文章代碼(AID): #1Kpt-_rf (MATLAB)