注册 登录
编程论坛 VB6论坛

求各位高手指导下怎么用VB实现矩阵的乘法?

少年激进 发布于 2012-06-27 16:00, 3977 次点击
我用的是microsoft visual studio 2008中的那个Vb环境做的,想在TextBox框中把矩阵相乘的结果显示出来。
有哪位会嘛?可不可以教一下,谢谢!
3 回复
#2
积善门徒2012-06-28 18:39
数学学不好!
我不能理解什么是矩阵乘法
#3
老顽童9892012-07-29 18:19
矩阵乘法就是两个矩阵(第一个矩阵A的列数必须和第二个矩阵B的行数相等)相乘
 得到一个A矩阵行B矩阵列的一个矩阵C
这里举例:(代码如下)
Dim A(5, 10), B(10, 6), C(5, 6) As Double, I, J, K, N, M, P As Integer

Private Sub Form_Load()
Show
Cls
 N = 2: P = 4: M = 2
 A(1, 1) = -4.513: A(1, 2) = -7.82: A(1, 3) = -11.184: A(1, 4) = -14.7185: A(2, 1) = 1: A(2, 2) = 1: A(2, 3) = 1: A(2, 4) = 1 'A矩阵
 B(1, 1) = -4.513: B(1, 2) = 1: B(2, 1) = -7.82: B(2, 2) = 1: B(3, 1) = -11.184: B(3, 2) = 1: B(4, 1) = -14.7185: B(4, 2) = 1 'B矩阵
For I = 1 To N: For J = 1 To M: C(I, J) = 0
 For K = 1 To P: C(I, J) = C(I, J) + A(I, K) * B(K, J): Next K: Print C(I, J);: Next J: Print: Next I '显示C矩阵
End Sub
#4
yuma2012-07-30 19:50
以下是引用老顽童989在2012-7-29 18:19:54的发言:

矩阵乘法就是两个矩阵(第一个矩阵A的列数必须和第二个矩阵B的行数相等)相乘
 得到一个A矩阵行B矩阵列的一个矩阵C
这里举例:(代码如下)
Dim A(5, 10), B(10, 6), C(5, 6) As Double, I, J, K, N, M, P As Integer

Private Sub Form_Load()
Show
Cls
 N = 2: P = 4: M = 2
 A(1, 1) = -4.513: A(1, 2) = -7.82: A(1, 3) = -11.184: A(1, 4) = -14.7185: A(2, 1) = 1: A(2, 2) = 1: A(2, 3) = 1: A(2, 4) = 1 'A矩阵
 B(1, 1) = -4.513: B(1, 2) = 1: B(2, 1) = -7.82: B(2, 2) = 1: B(3, 1) = -11.184: B(3, 2) = 1: B(4, 1) = -14.7185: B(4, 2) = 1 'B矩阵
For I = 1 To N: For J = 1 To M: C(I, J) = 0
 For K = 1 To P: C(I, J) = C(I, J) + A(I, K) * B(K, J): Next K: Print C(I, J);: Next J: Print: Next I '显示C矩阵
End Sub

为什么有那么多变量都没有声明数据类型呢?

[ 本帖最后由 yuma 于 2012-7-30 20:07 编辑 ]
1