matlab自定義函式返回值為22矩陣時,怎麼程式設計呢

2021-03-04 08:53:36 字數 2574 閱讀 4834

1樓:卜項離

matlab裡面都是返回矩陣的,就是乙個數它也是按1×1的矩陣來算的,所以如果你函式內部得到乙個2×2的矩陣out,直接out=function(x);就行了

2樓:轉基因牛

matlab函式定義的一般規則為

function [a,b] = fun(c,d,e)函式體end

其中 a,b是輸出變數 fun是函式名稱 c,d,e為輸入函式變數 函式體為函式執行的功能。函式可以沒有輸出也可以沒有輸入

返回2*2矩陣對變數並沒有特殊要求,只需保證在函式體中,給輸出變數賦值使輸出變數等於期望輸出的2*2矩陣即可

請求matlab大神編輯程式! 編寫乙個函式,得到兩個矩陣a和b的相乘的結果,函式的形式必須是

3樓:匿名使用者

函式檔案matmult_20150101.mfunction matrixproduct = matmult_20150101(a, b)

[m,n] = size(a);

[x,y] = size(b);

if(n~=x)

disp(['矩陣維度不匹配'])

return

endmatrixproduct = zeros(m,y);

for i=1:m

for j=1:y

for k=1:n

matrixproduct(i,j) = matrixproduct(i,j) + a(i,k)*b(k,j);

endend

end呼叫示例

>> a=[1 2 3;4 5 6];

>> b = [1 1 1 1;2 3 4 5];

>> c = [1 1 1 1;2 3 4 5;3 4 5 6];

>> matmult_20150101(a, b)矩陣維度不匹配

>> matmult_20150101(a, c)ans =

14    19    24    29

32    43    54    65

>> a*c  % 直接計算

ans =

14    19    24    29

32    43    54    65

matlab程式設計:給定矩陣a和b,請寫一函式計算兩矩陣的乘積,a和b作為該函式的輸入引數,要求要判斷兩個矩陣是

4樓:匿名使用者

第一樓的程式錯誤,沒有提示輸入a,b矩陣!

我把程式修改後完全能實現,執行時提示輸入a,b矩陣,且能得結果!

程式原始碼如下:

function c=bicu(a,b)

a=input('a matrix=') ;

b=input('b matrix=');

[m1,n1]=size(a);

[m2,n2]=size(b);

if n1==m2

c=zeros(m1,n2);

for i=1:m1

for j=1:n2

for k=1:n1

d=a(i,k)*b(k,j);

c(i,j)=c(i,j)+d;

endend

endelse disp(['matrix a and b could not be multiplied']);

end儲存為bicu.m後即可執行!

希望能對你有幫助!

5樓:匿名使用者

function c=bicu(a,b)

[m1,n1]=size(a);

[m2,n2]=size(b);

if n1==m2

c=zeros(m1,n2);

for i=1:m1

for j=1:n2

for k=1:n1

d=a(i,k)*b(k,j);

c(i,j)=c(i,j)+d;

endend

endelse disp(['matrix a and b could not be multiplied']);end

6樓:匿名使用者

size_a = size(a);

size_b = size(b);

if (size_a(2) == size_b(1))disp(['matrix a and b could be multiplied']);

else

disp(['matrix a and b could not be multiplied']);end

matlab中乙個2*2的矩陣包含4個**,怎麼將他們作為乙個**輸出,應該用什麼函式? 20

7樓:匿名使用者

matlab中很多時候對單個資料和

整個矩陣進行操作的方法是一模一樣的,在你這裡就是如此。

你可以認為a,b,c就分別是你的那三個rgb矩陣。

然後d = a/64*64 + b/64*16 + c/64*16就是你要的結果。

這裡面除法全部對應「位右移」操作,乘法則是「位左移」操作。你可以試著自己理解一下。

什麼是函式返回值,請問PHP中函式的返回值是什麼意思?請詳細解釋下 !!

函式返回值就是你所呼叫的函式返回給你的值。比如說void fun int n,int m 前面的void就說明這個函式是沒返回值的。比如int fun int m 時,這個函式執行以後要返回一個整型數。一 一般的情況,c語言預設的返回值的型別是int整形,其他的函式看其函式前的型別就可以知道這個函式...

自定義常量定義應該在哪,C語言自定義函式中定義常量 變數的問題

define和const 1.define是巨集定義,程式在預處理階段將用define定義的內容進行了替換。因此程式執行時,常量表中並沒有用define定義的常量,系統不為它分配記憶體。const定義的常量,在程式執行時在常量表中,系統為它分配記憶體。2.define定義的常量,預處理時只是直接進行...

c怎麼輸出函式的返回值

int fun void main cout c 函式返回值問題 1 函式的返回值是通過函式中的return語句獲得的。return語句將被呼叫函式中的乙個確定值帶回主調函式中去。如果需要從被呼叫函式帶回乙個函式值 供主調函式使用 被呼叫函式必須包含return語句。如果不需要從被呼叫函式帶回函式值...