矩阵乘法

矩阵公式

矩阵A:a*b阶  
  矩阵B:   b*c阶  
  for   i=1   to   a  
      for   j=1   to   c  
          for   k=1   to   b  
                  sum(i,j)=sum(i,j)+A(i,k)*B(k,j)  
        next  
    next  
  next 

  矩阵相乘须遵守一定规则,如果矩阵A乘以B得到C,则必须满足:  
  1、矩阵A的列数与矩阵B的行数相等;  
  2、矩阵A的行数等于矩阵C的行数;  
  3、矩阵B的列数等于矩阵C的列数。   
  下面程序中是3行2列的a矩阵乘以2行3列的b矩阵得到3行3列的c矩阵。

Option   Explicit  
  Dim   a(3,   2)   As   Integer  
  Dim   b(2,   3)   As   Integer  
  Dim   c(3,   3)   As   Integer  
   
  Private   Sub   Form_Load()  
          a(1,   1)   =   5:   a(1,   2)   =   7  
          a(2,   1)   =   8:   a(2,   2)   =   3  
          a(3,   1)   =   7:   a(3,   2)   =   4  
          b(1,   1)   =   12:   b(1,   2)   =   3:   b(1,   3)   =   6  
          b(2,   1)   =   4:     b(2,   2)   =   2:   b(2,   3)   =   7  
           
          Dim   i   As   Integer,   j   As   Integer,   n   As   Integer  
          For   i   =   1   To   3  
                  For   j   =   1   To   3  
                          For   n   =   1   To   2  
                                  c(i,   j)   =   c(i,   j)   +   a(i,   n)   *   b(n,   j)  
                          Next   n  
                  Next   j  
          Next   i  
           
          Form1.AutoRedraw   =   True  
          For   i   =   1   To   3  
                  For   j   =   1   To   3  
                          If   j   Mod   3   <>   0   Then  
                                  Print   c(i,   j);  
                          Else  
                                  Print   c(i,   j)  
                          End   If  
                  Next   j  
          Next   i  
  End   Sub

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值