Re: [討論] 如何函數的引數先不輸入,先for回圈?

看板MATLAB作者 (鋼琴中的大賦格)時間12年前 (2013/03/26 23:09), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串2/2 (看更多)
如果是我的話會這樣寫 function test=f(m,n) test = 1./(m.^2+n.^2) .* mod(m+n,2); end m = 0 : 2; sum(f(m,1)) 參考看看 ※ 引述《candy88257 (阿泰斯)》之銘言: : 例如: : M檔: : function test=f(m,n) : if mod(m+n,2)==0 : test=0; : else : test=1/((m^2)+(n^2)); : end : end : 程式碼: : data=@(n) []; : for m=0:2 : data=sum([data,f(m,n)]); : end : data(1) : 這樣跑會出錯 : 邏輯大概就是這樣 : n我不想是先給他,想要後來想改啥就改啥,這樣才能符合我要的輸入方式(計算式裡 : 一堆f(1)、f(2)......等的函數,不可能每個都是先給他 : 要如何做到這樣子? : 求高手幫助! 感謝! : 原始程式圖片(巴哈姆特圖片空間): : m檔: http://truth.bahamut.com.tw/s01/201303/debce586769fc6daf3017b1c7dced138.JPG
: 程式碼(n=1): : http://truth.bahamut.com.tw/s01/201303/8515fc3eeef752081fae0898c9dc54bf.JPG
: 結果: : http://truth.bahamut.com.tw/s01/201303/0e790658eb0f7b420ee7504c8bbc5a01.JPG
: 程式碼(n=2): : http://truth.bahamut.com.tw/s01/201303/805cffbe1b8db06047abc6a2452155cf.JPG
: 結果: : http://truth.bahamut.com.tw/s01/201303/4a7a821ddf7ae7ddda3456ce377a9718.JPG
-- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.253.228.147

03/27 16:42, , 1F
感謝!!!
03/27 16:42, 1F
文章代碼(AID): #1HKReTI2 (MATLAB)
文章代碼(AID): #1HKReTI2 (MATLAB)