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語句。如果不需要從被呼叫函式帶回函式值...