[討論] 不等式語法

看板MATLAB作者 (123)時間9年前 (2015/04/06 20:37), 編輯推噓1(102)
留言3則, 2人參與, 最新討論串1/1
Hi 各位大大 是matlab 新手,麻煩高抬貴手 因為我現在 在"if"底下 要寫一串條件式 syms x y z for x=1:1:10 for y=1:1:10 for z=1:1:10 if z>y && y>x if 0.5*x < abs(z-2*y) || 1.2*x < abs(z-2*y) < 0.8*y || 1.5z < abs(z-2*y) fprintf('[x, y, z]=%f, %f, %f \n',x,y,z) end end end end end 因為我debug 完之後,感覺是 1.2*x < abs(z-2*y) < 0.8*y 這邊怪怪的 我嘗試以if 0.5*x < z-y || (1.2*x < abs(z-2*y) && abs(z-2*y) < 0.8*y) || 1.5z < abs(z-2*y) 還是怪怪的 我想表達的是 abs(z-2*y)這個值 是在 0.5x 或 (1.2x,0.8y)或 1.5z 這個區間裡 請問大家 我這樣寫有錯嗎??? 謝大大家的指教~~~~ ^^ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 192.195.90.157 ※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1428323833.A.81D.html

04/06 21:16, , 1F
把if拆開檢查如何
04/06 21:16, 1F

04/07 03:35, , 2F
我後來發現這樣寫法才是對的 abs(z-2*y) && abs(z-2*y)
04/07 03:35, 2F

04/07 03:35, , 3F
thanks
04/07 03:35, 3F
文章代碼(AID): #1L8dtvWT (MATLAB)