在MATLAB(或者更一般地說)中,如果我只想要發生某些事情,例如,每做一次for loop
的50次迭代,我怎麼能比下面做得更好?那就是不寫出每個可能的值+50。謝謝。有for循環腳本只有每第N次迭代纔會執行某些操作
for i = 1:1060;
if i = 50 || 100 || 150 || ... || 1050
randi(i); % for example, just do something
end;
end;
在MATLAB(或者更一般地說)中,如果我只想要發生某些事情,例如,每做一次for loop
的50次迭代,我怎麼能比下面做得更好?那就是不寫出每個可能的值+50。謝謝。有for循環腳本只有每第N次迭代纔會執行某些操作
for i = 1:1060;
if i = 50 || 100 || 150 || ... || 1050
randi(i); % for example, just do something
end;
end;
你想要的是
if mod(i, 50) == 0
do something
我改變你的答案(+1)爲Matlab語法(因爲它是一個Matlab問題),希望沒關係。乾杯。 –
你想要的是
for i = 0:50:1050
do_stuff(i);
end
,除非它是從你的問題不清楚,如果以前的答案是你真正想要的,你在看起來像這樣的情況下可能需要
for i = 1:1060
if mod(i, 50) == 0
do_something(i)
end
do_something_else(i)
end
乾杯, -
我不知道MATLAB的語法,但你正在尋找模數(除法後的餘數)函數:E.g. '如果我mod 50 = 0' .. – Blorgbeard