matlab函式中怎麼呼叫自身進行自迴圈

2021-03-04 08:53:36 字數 1813 閱讀 4193

1樓:匿名使用者

在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如何迴圈呼叫函式

2樓:匿名使用者

for k=1:4 %數復據個數%q=['t' num2str(k) '']; %q 表示字首%end說明制:k是程式的迴圈進行變化bai,' num2str(k) '命令的意思是du把k變成字元型。

現zhi在隨dao著k的變化,q就相當於t1,t2,t3,t4了,然後你把q當成呼叫函式的名稱即可。

3樓:匿名使用者

for k=1:4 %資料個數%q=['t' num2str(k) '(p1,p2)']; %q 表示字首%

eval(q);end

4樓:匿名使用者

看看matlab中inline和feval函式你就明了。

多個函式在matlab中怎麼呼叫?

5樓:匿名使用者

函式檔案

function y=fun1(x)

y=sin(x);

********************==

function y=fun2(x)

y=cos(x);

********************

function y=fun3(x)

y=tan(x);

**********

建立3個m檔案

x=1:4;

s=;for i=1:3;

funstr=str2func(['fun',num2str(i)]);

s(:,i)=funstr(x);

end>> s

s =0.841470984807897 0.54030230586814 1.5574077246549

0.909297426825682 -0.416146836547142 -2.18503986326152

0.141120008059867 -0.989992496600445 -0.142546543074278

-0.756802495307928 -0.653643620863612 1.15782128234958

js函式中呼叫另函式,js函式中呼叫另乙個函式

js函式呼叫另乙個函式,此種情況是乙個頁面同時要引入這兩個js,如 html頁面 return true 不要忘記了,不然當va的值不為空時 if oncli 中oncli 是undefined 1.js function fun function a function b function a 這...

matlab中自相關函式,matlab中自相關函式xcorr

自相關函式是描述隨機訊號x t 在任意兩個不同時刻t1,t2的取值之間的相關程度.設原函式是f t 則自相關函式定義為r u f t f t 其中 表示卷積.給個例子 dt 1 t 0 dt 100 x cos t a,b xcorr x,unbiased plot b dt,a 上面 是求自相關函...

matlab中envelope函式怎麼使用

在matlab中,如果是matlab自帶的函式,則可以按照該函式的格式直接呼叫,如果是自己編寫的函式,可以將函式寫在乙個檔案中,之後再主檔案中呼叫 matlab的std函式怎麼用 這個是help中的解釋,我大概做下翻譯 s std x s std x,flag s std x,flag,dim 有三...