1樓:我行我素
這個問題不能一概而論。一般情況,迴圈語句for...end是較慢的,但程式要求必須用,是沒辦法的。
在for迴圈中呼叫函式,與for...end後呼叫同一個函式相比,呼叫快慢是一樣的。
matlab 函式中怎麼呼叫自身,進行自迴圈? 20
2樓:匿名使用者
在matlab中,一個函式可以呼叫其它函式,也可以呼叫自身(即遞迴呼叫)。
利用遞迴演算法編寫函式的典型例子是計算fibonacci數列。
m-函式檔案:
function a = my_fibo(k)
if k == 1 || k == 2
a = 1;
else
a = my_fibo(k-1) + my_fibo(k-2);
end將這個檔案寫入m-檔案編輯器並以名稱「my_fibo.m」儲存,然後就可以呼叫:
>> my_fibo(26)
ans =
121393
遞迴演算法是解決某一類問題的有效方法,但不宜濫用,因為它的運算速度往往很慢。例如
>> tic, n= my_fibo(26) ,toc
n =121393
elapsed_time =
1.468
但如果用一般的迴圈語句來求解這個問題:
>> tic,n=[1,1];for k=3:100,n(k)=n(k-1)+n(k-2);end,toc,n(26)
elapsed_time =
0ans =
121393
速度差別是非常明顯。
matlab怎麼呼叫m檔案中的函式
將兩個m檔案放在同一目錄,在第一個m檔案裡面直接輸入第二個m檔案的函式名稱即可 輸出1,輸出2,函式名稱 變數1,變數2,matlab是美國mathworks公司出品的商業數學軟體,用於演算法開發 資料視覺化 資料分析以及數值計算的高階技術計算語言和互動式環境,主要包括matlab和simulink...
MATLAB中for迴圈與while迴圈的區別
while可以在不知道最大迴圈次數的情況下,在滿足條件的時候退出迴圈,但是for必須指定最大迴圈次數,到達最大迴圈次數時就要退出了,在滿足條件時也可以退出的.同樣的功能抄,用for和while都能實現 雖然如此,但這兩個命令各有優勢,同一項功能,用這兩個命令實現起來的複雜程度可能不一樣!自己總結認為...
matlab中怎麼呼叫pythonpython計算結果再返回
全部用檔案io的話可以這樣 matlab把所有引數輸出到一個檔案裡,然後用system命令調python指令碼。python指令碼讀檔案做計算結果再寫檔案。最後matlab再讀檔案得到結果。假設python指令碼的用法是 python py in.txt out.txt則matlab呼叫命令為 st...