Re: [問題] function可回傳2個值嗎已回收

看板MATLAB作者 (eji)時間15年前 (2010/12/04 00:18), 編輯推噓1(102)
留言3則, 1人參與, 最新討論串2/2 (看更多)
※ 引述《cbolong (波波龍)》之銘言: : 在command window下 我知道可以回傳兩個值 : 但我在寫程式時, : 在程式內呼叫function 就不知道如何回傳兩個值 : 例: : a=1; b=2; : [i j]=test(a,b); : function [i j]=test(a,b) : i=a+b; : j=a-b; : end : 這樣就不會成功的例子 : 我用command window的指令下去寫 : google過 但都只找到只回傳一個值的寫法 : 想問一下如何回傳兩個值? matlab要function 的m-file才能在function 下面再接function 所以必須分成兩個m-file a=1; b=2; [i j]=test(a,b); 以下另存成m-file function [i j]=test(a,b) i=a+b; j=a-b; end 如果你真的不想分開 就要把程式改成function function [i,j]=ptt a=1; b=2; [i j]=test(a,b); end function [i j]=test(a,b) i=a+b; j=a-b; end 這樣可以存成1個m-file 但你還是必須另外在別的m-file或Command Window呼叫它 [i,j]=ptt -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.250.18.164

12/04 08:56, , 1F
謝謝 我懂了 因為我想說測試把呼叫的function寫在同一個
12/04 08:56, 1F

12/04 08:57, , 2F
程式內時 傳一個值 結果是可以傳的 以為傳兩個也是可以
12/04 08:57, 2F

12/04 08:57, , 3F
看來還是要分成兩個m檔來做xd
12/04 08:57, 3F
文章代碼(AID): #1C-HXmgo (MATLAB)
文章代碼(AID): #1C-HXmgo (MATLAB)