我做了一個仿真和代碼迴路MATLAB進行循環掛
例如
IntervalInterArrivalTime = [2 3 4 5] //user input
CDF = [250 500 750 1000] // this is the probability but multiply 1000 to alculate the range
randInterArrival = [991 351 754 823] // this is pc random generated number so each time wwill be different
lengthCDF = length(CDF); // length of the CDF which in this case is =4
period = 0;
for循環我想要做的是該程序將檢查randInterArrival的範圍與CDF和IntervalArrivalTime。例如:
如果randInterArrival> 0且< = CDF(1),則週期將IntervalInterArrivalTime(1)
否則如果randInterArrival> CDF(1)和< = CDF(2),則週期將IntervalInterArrival(2)
否則如果randInterArrival> CDF(2)和< = CDF(3),則週期將是IntervalInterArrival(3)
否則如果randInterArrival> CDF(3)和< = CDF(4),那麼期限將是IntervalInterArrival(4)
for i=1:lengthCDF
if randInterArrival(i)>0 && randInterArrival(i)< CDF(i)
period=IntervalInterArrivalTime(i)
else if randInterArrival(i)> CDF(i) % how to continued to write the statement out so that i can loop through all the items in the CDF and check which IntervalInterArrival() it is
% i stop here and dunno how to continued to loop through the CDF and check
end
end
希望大家都能幫忙。在此先感謝
首先,您的if語句很時髦。看到這裏http://www.mathworks.com/help/matlab/ref/if.html。你或者需要使用elseif或者其他的結束。你也需要結束你的for循環。並且如果你不想讓你的代碼掛起,拿走這個套索。 – thang
我知道我沒有結束文件,因爲for循環尚未完成。並且我嘗試了一些方法來執行for循環,但仍然失敗。可以給出一個類似的例子,以便我可以讓for循環循環並檢查CDF?在此先感謝 – Eric
爲什麼不張貼實際的代碼,因爲「else if randInterArrival(i)> CDF(i)&& ?? //我掛在這裏..」看起來不像合法的matlab代碼。如果您發佈原始代碼,我認爲人們可以更好地幫助您。 – thang