矩陣a是33的矩陣,b是32的矩陣,程式設計求a

2021-03-04 06:40:57 字數 3804 閱讀 5549

1樓:kg深寒

#include

void main()

printf("\n"); } }

2樓:匿名使用者

#include

int main(void)

,,};

int b[3][2] = ,};

int c[3][3];

int i,j,k;

for(i=0;i<3;i++)

printf("\n");}}

return 0;}

矩陣a是乙個3×3的矩陣,b是乙個3×2的矩陣,程式設計求a×b。

3樓:匿名使用者

矩陣aa(1,1),a(1,2),a(1,3)

a(2,1),a(2,2),a(2,3)

a(3,1),a(3,2),a(3,3)

矩陣bb(1,1),b(1,2)

b(2,1),b(2,2)

b(3,1),b(3,2)

矩陣c=a*b

if ubound(a,2)=ubound(b,1) thenfor i=1 to ubound(a,1)for j=1 to ubound(b,2)c(i,j)=0

for k=1 to ubound(a,2)c(i,j)=a(i,k)*b(k,i)+c(i,j)next k

next j

next i

else

msgbox "矩陣不可乘!"

end if

4樓:匿名使用者

最起碼你也要告訴人家你用什麼語言程式設計

5樓:匿名使用者

matlab: a*b

6樓:節頤真伍絢

問題1:

問:為啥陣列c是3行5列

答:根據矩陣乘法定義,乙個m╳r的矩陣a和乙個r╳n的矩陣b的乘積矩陣c是乙個m╳n矩陣

問:這裡是怎麼變過來的

也就是我還是不明白陣列a*陣列b是什麼樣的進行的

答:根據矩陣乘法定義,矩陣c中第i行第j列位置的元素cij等於矩a陣中第i行元素ai1,ai2,...,air與矩陣b中第j列元素b1j,b2j,...

,brj各對應元素的乘積,即cij=ai1bij+ai2b2j+...+airbrj

注意樓主的題中,m=3,r=4,n=5,i=0,1,2,3;j=0,1,2,3,4

這就表現在這裡:

for(k=0;k<4;k++)

c[i][j]+=a[i][k]*b[k][j];

這裡表示的是c中第i+1行第j+1列的元素

問題2:

問:中間用k值去代替,原因是什麼

是因為這樣更簡便麼

?答:中間的k是為了表示以下r項和ai1bij+ai2b2j+...+airbrj中的第k+1項aikbkj,對k迴圈求和就可以得到cij

問:如果是的話那下次兩個值不同該怎麼辦?

答:矩陣乘法定義規定cij=ai1bij+ai2b2j+...+airbrj,因此下次兩個值也一定是一樣的,若不一樣則a與b不可乘

c語言:輸入乙個2行3列的矩陣a和乙個3行4列的矩陣b,計算兩矩陣的乘積

7樓:曉龍修理

解題過程如下:

#include ;#include

#define l 2,#define m 3,#define n 4

}printf("\n");}return;}int main(void)};

double b[m][n] = };double c[l][n] = };int i = 0, j = 0, k = 0;

printf("\ngenerate a[%d][%d]:\n", l, m);

genarr(&a[0][0], l, m);

printmatrix(&a[0][0], l, m);

printf("\ngenerate b[%d][%d]:\n", m, n);

}}printf("\ncalc c[%d][%d]:\n", l, n);

性質:矩陣相乘最重要的方法是一般矩陣乘積。它只有在第乙個矩陣的列數(column)和第二個矩陣的行數(row)相同時才有意義  。

一般單指矩陣乘積時,指的便是一般矩陣乘積。乙個m×n的矩陣就是m×n個數排成m行n列的乙個數陣。由於它把許多資料緊湊地集中到了一起,所以有時候可以簡便地表示一些複雜的模型,如電力系統網路模型。

當矩陣a的列數(column)等於矩陣b的行數(row)時,a與b可以相乘。矩陣c的行數等於矩陣a的行數,c的列數等於b的列數。乘積c的第m行第n列的元素等於矩陣a的第m行的元素與矩陣b的第n列對應元素乘積之和。

當提及「矩陣相乘」或者「矩陣乘法」的時候,並不是指代這些特殊的乘積形式,而是定義中所描述的矩陣乘法。在描述這些特殊乘積時,使用這些運算的專用名稱和符號來避免表述歧義。

把給定的圖轉為鄰接矩陣,即a(i,j)=1當且僅當存在一條邊i->j。令c=a*a,那麼c(i,j)=σa(i,k)*a(k,j),實際上就等於從點i到點j恰好經過2條邊的路徑數(列舉k為中轉點)。

類似地,c*a的第i行第j列就表示從i到j經過3條邊的路徑數。同理,如果要求經過k步的路徑數,只需要二分求出a^k即可。

8樓:匿名使用者

#include

int main()}}

for(x=0;x<2;x++)

return 0;}

已知3階矩陣a的特徵值為-1,2,2,設b=a2+3a-e,求矩陣a的行列式,矩陣b的特徵值

9樓:drar_迪麗熱巴

b的特徵值

是:-3,9,9

解題過程如下:

由特徵值與行列式的關係知:|a|=λ1*λ2*λ3=(-1)*2*-4.

其中公式中λi是矩陣a的特徵值。

(2)設f(x)=x^2+3x-1

則b=f(a)

由特徵值的性質知:若λ是矩陣a的特徵值,則f(λ)就是多項式矩陣f(a)的特徵值,

所以b=f(a)的特徵值是:f(-1), f(2), f(2)

即b的特徵值是:f(-1)=(-1)^2+3*(-1)-1=-3

f(2)=2^2+3*2-1=9

f(2)=9

即b的特徵值是:-3,9,9

設a為n階矩陣,若存在常數λ及n維非零向量x,使得ax=λx,則稱λ是矩陣a的特徵值,x是a屬於特徵值λ的特徵向量。

a的所有特徵值的全體,叫做a的譜。

求矩陣的全部特徵值和特徵向量的方法如下:

第一步:計算的特徵多項式;

第二步:求出特徵方程的全部根,即為的全部特徵值;

第三步:對於的每乙個特徵值,求出齊次線性方程組。

[注]:若是的屬於的特徵向量,則也是對應於的特徵向量,因而特徵向量不能由特徵值惟一確定.反之,不同特徵值對應的特徵向量不會相等。

10樓:匿名使用者

由特徵值與行列式的關係知:|a|=λ1*λ2*λ3=(-1)*2*-4.

其中公式中λi是矩陣a的特徵值。

(2)設f(x)=x^2+3x-1

則b=f(a)

由特徵值的性質知:若λ是矩陣a的特徵值,則f(λ)就是多項式矩陣f(a)的特徵值,

所以b=f(a)的特徵值是:f(-1), f(2), f(2)即b的特徵值是:f(-1)=(-1)^2+3*(-1)-1=-3f(2)=2^2+3*2-1=9

f(2)=9

即b的特徵值是:-3,9,9

A是三階矩陣,設A是三階矩陣,A2,A的伴隨矩陣是A,則2A

a a a e 3e a 3a 1 a 3 a 1 27 1 3 9 附註 ka k n a 設a是三階矩陣,a 2,a的伴隨矩陣是a 則 2a 解題步驟 伴隨矩陣a 有aa a e兩邊求行列式的值 a a a e a 2 a 3 8 a 4 2a 2 3 4 32 如果二維矩陣可逆,那麼它的逆矩陣...

如何判斷初等矩陣,如何判斷一個矩陣是初等矩陣

1 首先 初等矩陣都可逆 2 其次,初等矩陣的逆矩陣其實是一個同型別的初等矩陣 可看作逆變換 3 初等矩陣是由單位矩陣經過一次三種矩陣初等變換得到的矩陣。初等矩陣的模樣可以寫一個3階或者4階的單位矩陣。初等變換有三種 1 交換矩陣中某兩行 列 的位置 2 用一個非零常數k乘以矩陣的某一行 列 3 將...

A是正交矩陣,那麼A的伴隨矩陣是

a的伴隨矩陣仍是正交矩陣。伴隨矩陣通常用a 表示。正交矩陣的充要條件 a正交 a a aa e a 1 a 其中a 是a的轉置矩陣 證明 由a是正交矩陣 aa e e是全是1的同階矩陣 而 a 2 a a a a e 1所以 a 1 由a a a 1 所以a a 1 所以 a a a 1 a 1 a...