2014-09-29 169 views
1

我是matlab新手。我得到了一個錯誤,說「沒有足夠的輸入參數」matlab沒有足夠的輸入參數錯誤

function ckl = cofact(A,k,l) 
% Cofactor ckl of the a_kl entry of the matrix A. 
[m,n] = size(A); 
if m ~= n 
    error('Matrix must be square') 
14 
end 
B = A([1:k-1,k+1:n],[1:l-1,l+1:n]); 
ckl = (-1)^(k+l)*det(B); 

錯誤:

>> cofact 
Error using cofact (line 3) 
Not enough input arguments. 
+0

你定義你的函數應該有3個輸入參數,但你沒有任何參數調用它。查看http://www.mathworks.com/help/matlab/ref/varargin.html瞭解可變數量的參數。在matlab中將函數和腳本放在同一個文件中是一個不好的做法。 – Cheery 2014-09-29 00:17:33

回答

0

在Matlab你可以有輸入和輸出參數的函數。在你的情況你有兩個。第一個,「clk」是輸出參數(解決方案)。你的輸入參數是「A」,「k」,「l」。當你調用你的函數「cofact」時,你需要通過建立這個參數來調用它。 因此,您需要定義變量「A」,「k」,「l」的輸入值。在你的情況下,A將是矩陣,K和L是你想要使用的位置。所以,當你打電話給它時,將會是類似於:

solution = cofact(MATRIX,ARG1,ARG2);

相關問題