※ 引述《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; % <