[討論] 如何判別條件 來選擇要帶入的函數

看板MATLAB作者 (哩共啊!!!)時間5年前 (2019/11/04 23:25), 5年前編輯推噓3(302)
留言5則, 2人參與, 5年前最新討論串1/3 (看更多)
a = [23 65 14 32 61 72]; b = [1 3 3 4 2 1]; % 有a.b兩矩陣 y1 = 3*a.^2+25*a-32.2; y2 = 2*a.^2-3.1*a-26; y3 = 4.06*a.^2-16*a+7; y4 = -6.79*a.^2-52*a+30.49; % 有4個函數 % 把b帶入yb,使yb變成上述的4個函數 plot(a, yb, 'o'); % 當b等於某數字時,會對應使用某個yb函數,讓a代入,最後在圖上畫出這六個點。 請問各位前輩,我該如何讓matlab判別b矩陣中的數字會對應哪個函數呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.116.20.140 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1572881112.A.46E.html

11/06 00:34, 5年前 , 1F
提示 y(b)
11/06 00:34, 1F
謝謝提示,稍微改了一下如下,但仍無法繪出圖 請問還需要修改什麼嗎? a = [23 65 14 32 61 72]; b = [1 3 3 4 2 1]; % 有a.b兩矩陣 if y(b)==y(1), then y(1) = 3*a.^2+25*a-32.2; if y(b)==y(2), then y(2) = 2*a.^2-3.1*a-26; if y(b)==y(3), then y(3) = 4.06*a.^2-16*a+7; if y(b)==y(4), then y(4) = -6.79*a.^2-52*a+30.49; % 有4個函數 % 把b帶入y(b),使y(b)變成上述的4個函數 plot(a, y(b), 'o'); % 希望圖面上有6個點,分別是a=23時套用b=1的函數、a=65時套用b=3個函數...以此類推 ※ 編輯: liiyihluen (140.116.20.157 臺灣), 11/07/2019 23:29:27

11/08 02:30, 5年前 , 2F
初學就自定義雙變數函數吧f(a,b)
11/08 02:30, 2F

11/09 20:19, 5年前 , 3F
樓上正解,當初發太快忘記a。然後MATLAB if 沒有then
11/09 20:19, 3F

11/09 20:21, 5年前 , 4F
如果只是簡單繪圖你的應該就可以了,不過建議y另外定義成
11/09 20:21, 4F

11/09 20:21, 5年前 , 5F
function 比較正式。看一下文件說明 function 怎用。
11/09 20:21, 5F
文章代碼(AID): #1Tm4BOHk (MATLAB)
文章代碼(AID): #1Tm4BOHk (MATLAB)