看板 MATLAB 關於我們 聯絡資訊
我程式改設成 for n=1:5800 if Energy > AllEnergy if (n<=16)&&(n>=1) % Vel 1~16 vel(n)=vel(n); elseif (n>=16)&&(n<=5799) % Vel 17~5799 if y(n)>0 vel(n+1)=max(0,vel(n)-0.277); else vel(n+1)=max(0,vel(n)+0.277); end else % Vel 5800 if y(n)>0 vel(n)=max(0,vel(n-1)-0.277); else vel(n)=max(0,vel(n-1)+0.277); end end end end 當我 Energy 大於 AllEnergy vel(1)到vel(16)維持不變 Vel(17)到vel(5799) 因 y(n) 的正負值決定 原本前一個Vel值增減作為取代 Vel(5800) 則是Vel(5799)做增減取代 我的y有一連串正負值 可是 我程式跑到某段落開始就一直呈現在0直到結束 是我有打錯的地方嗎? 還是少打了什麼? 我希望跑出來的數據是呈現 當Vel 1~16是固定不動,17~5800 依照 對應的y 做新的值 而這些新的值 都不小於零。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 120.117.48.92 ※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1466669442.A.088.html
name0625: 要不要先從數據檢查起? 06/24 16:21
X555L: 謝謝N大! 07/02 15:20
X555L: 想請問N大,如果我要再多加一個上限值不超過16,那該怎設定 07/02 15:21
X555L: ? 07/02 15:21