vb矩阵课程设计
**课程设计
矩阵课程设计
单 位 ** 分院(系) 专 业 ** 学 号 ** 学生姓名 ** 指导教师 **
完成日期 2年月日
- 1 -
摘 要
矩阵运算,是利用VB编写的一款软件。它在输入的两个矩阵间进行加法、减法以及乘法的运算,界面设计简洁,运算速度快捷。
论文
政研论文下载论文大学下载论文大学下载关于长拳的论文浙大论文封面下载
首先介绍了矩阵运算的系统组成和功能描述。其次,介绍了矩阵运算的总体分析与设计,包括需求分析和功能模块分析。最后,采用图片与代码结合的方式详细地叙述了系统功能的实现。
关键词:科研信息管理系统,J2EE,JSP,组件
- 2 -
目录
1、封面................................................................. 1
2、摘要 ................................................................ 2
3、目录 ............................................................................................................................ 3
4、选
题
快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题
的意义 ................................................................................................................. 4
5、系统功能需求分析 ..................................................................................................... 45.1 系统概述 ................................................................................................................. 4
5.2系统的运行环境 .................................................... 4
6(系统设计 ................................................................................................................. 4 6.1 总体结构设计 ....................................................................................................... 4 6.2 界面设计 ............................................................................................................... 5 6.3 代码设计 ............................................................................................................... 6 5(总结 ............................................................... 14
5.1总结 ....................................................................................................................... 14 参考文献 .............................................................. 14
- 3 -
4、选题的意义
1. 掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方
法和技能。
2. 了解利用VB进行矩阵运算的方法。 5、系统功能需求分析
5.1 系统概述
矩阵运算,是利用VB编写的一款软件。它在输入的两个矩阵间进行加
法、减法以及乘法的运算。
5.2系统的运行环境
推荐:WindowsXP系统
6(系统设计
6.1 总体结构设计
矩阵运算
矩阵A的输入及储存 矩阵B的输入及储存
矩阵A加矩阵B 矩阵A减矩阵B 矩阵A乘矩阵B 关于
- 4 -
6.2 界面设计
- 5 -
6.3 代码设计
(1) 分步介绍
A.矩阵的输入
Private Sub Command1_Click() On Error GoTo lab:
Picture1.Cls
Picture3.Cls
d = InputBox("请输入A矩阵行数", "提示")
n = InputBox("请输入A矩阵列数", "提示")
ReDim a(1 To d, 1 To n) As Double Open "d:矩阵A.txt" For Append As #1 If n > 8 Or d > 10 Then
MsgBox "请输入列数小于6,行数小于10的矩阵", vbExclamation, "
提示"
Else
For i = 1 To d
For j = 1 To n
a(i, j) = InputBox("请输入矩阵a(" & i & "," & j & ")数值", "提示")
Picture1.Print a(i, j);
Print #1, a(i, j)
Next j
Picture1.Print
Next i
lab:
End If
Close #1
End Sub
Private Sub Command2_Click() On Error GoTo lab:
Picture2.Cls
Picture3.Cls
p = InputBox("请输入B矩阵行数", "提示")
q = InputBox("请输入B矩阵列数", "提示")
ReDim b(1 To p, 1 To q) As Double Open "d:矩阵B.txt" For Append As #2 If q > 8 Or p > 10 Then
- 6 -
MsgBox "请输入列数小于6,行数小于10的矩阵", vbExclamation, "提示"
Else
For i = 1 To p
For j = 1 To q
b(i, j) = InputBox("请输入矩阵b(" & i & "," & j & ")数值", "提示")
Picture2.Print b(i, j);
Print #2, b(i, j)
Next j
Picture2.Print
Next i
lab:
End If
Close #2
End Sub
界面截图
B.矩阵的加法运算
代码如下:
Private Sub Command3_Click()
Picture3.Cls
- 7 -
If d = 0 Or n = 0 Or p = 0 Or q = 0 Then
MsgBox "请先输入矩阵", vbOKOnly, "提示"
GoTo lab:
End If
If d <> p Or n <> q Then
MsgBox "请输入行数和列数相同的矩阵才可相加", vbExclamation, "提示" End If
If d = p And n = q Then
ReDim c(1 To d, 1 To n) As Double
Open "d:矩阵C.txt" For Append As #3
For i = 1 To d
For j = 1 To n
c(i, j) = a(i, j) + b(i, j)
Picture3.Print c(i, j);
Print #3, c(i, j)
Next j
Picture3.Print
Next i
End If
Close #3
lab:
End Sub
界面截图:
- 8 -
C(矩阵的减法
代码如下:
Private Sub Command4_Click() Picture3.Cls
If d = 0 Or n = 0 Or p = 0 Or q = 0 Then
MsgBox "请先输入矩阵", vbOKOnly, "提示"
o lab: GoT
End If
If d <> p Or n <> q Then
MsgBox "请输入行数和列数相同的矩阵才可相减", vbOKOnly, "提示" End If
If d = p And n = q Then
ReDim c(1 To d, 1 To n) As Double
Open "d:矩阵D.txt" For Append As #4
For i = 1 To d
For j = 1 To n
c(i, j) = a(i, j) - b(i, j)
Picture3.Print c(i, j);
Print #4, c(i, j)
Next j
Picture3.Print
Next i
End If
Close #4
lab:
End Sub
界面截图:
- 9 -
D(矩阵的乘法
代码如下:
Private Sub Command5_Click() Picture3.Cls
If d = 0 Or n = 0 Or p = 0 Or q = 0 Then
MsgBox "请先输入矩阵", vbOKOnly, "提示"
GoTo lab:
End If
If n <> p Then
MsgBox "请输入A矩阵列数和B矩阵行数相等的矩阵才可相乘", vbOKOnly, "
提示"
End If
If n = p Then
ReDim c(1 To d, 1 To q) As Double
Open "d:矩阵E.txt" For Append As #5
For i = 1 To d
For j = 1 To q
For k = 1 To n
c(i, j) = a(i, k) * b(k, j) + c(i, j)
Next k
Picture3.Print c(i, j);
Print #5, c(i, j)
Next j
Picture3.Print
Next i
End If
Close #5
lab:
End Sub
界面截图:
- 10 -
(2) 全部代码
Dim a() As Double
Dim b() As Double
Dim c() As Double
Dim d As Double
Dim n As Double
Dim p As Double
Dim q As Double
Dim flag As Double
Private Sub Form1_Load() 矩阵运算.Show
关于.Hide
End Sub
Private Sub Command1_Click() On Error GoTo lab:
Picture1.Cls
Picture3.Cls
") d = InputBox("请输入A矩阵行数", "提示
n = InputBox("请输入A矩阵列数", "提示")
ReDim a(1 To d, 1 To n) As Double
Open "d:矩阵A.txt" For Append As #1 If n > 8 Or d > 10 Then
MsgBox "请输入列数小于6,行数小于10的矩阵", vbExclamation, "提示"
Else
For i = 1 To d
For j = 1 To n
a(i, j) = InputBox("请输入矩阵a(" & i & "," & j & ")数值", "提示")
Picture1.Print a(i, j);
Print #1, a(i, j)
Next j
Picture1.Print
Next i
lab:
End If
Close #1
End Sub
Private Sub Command2_Click() On Error GoTo lab:
Picture2.Cls
Picture3.Cls
- 11 -
p = InputBox("请输入B矩阵行数", "提示")
q = InputBox("请输入B矩阵列数", "提示")
ReDim b(1 To p, 1 To q) As Double Open "d:矩阵B.txt" For Append As #2 If q > 8 Or p > 10 Then
MsgBox "请输入列数小于6,行数小于10的矩阵", vbExclamation, "提示" Else
For i = 1 To p
For j = 1 To q
b(i, j) = InputBox("请输入矩阵b(" & i & "," & j & ")数值", "提示")
Picture2.Print b(i, j);
Print #2, b(i, j)
Next j
Picture2.Print
Next i
lab:
End If
Close #2
End Sub
Private Sub Command3_Click() Picture3.Cls
If d = 0 Or n = 0 Or p = 0 Or q = 0 Then
MsgBox "请先输入矩阵", vbOKOnly, "提示"
GoTo lab:
End If
If d <> p Or n <> q Then
MsgBox "请输入行数和列数相同的矩阵才可相加", vbExclamation, "提示" End If
If d = p And n = q Then
ReDim c(1 To d, 1 To n) As Double
Open "d:矩阵C.txt" For Append As #3
For i = 1 To d
For j = 1 To n
c(i, j) = a(i, j) + b(i, j)
Picture3.Print c(i, j);
Print #3, c(i, j)
Next j
Picture3.Print
Next i
End If
Close #3
- 12 -
lab:
End Sub
Private Sub Command4_Click()
Picture3.Cls
If d = 0 Or n = 0 Or p = 0 Or q = 0 Then
MsgBox "请先输入矩阵", vbOKOnly, "提示"
GoTo lab:
End If
If d <> p Or n <> q Then
MsgBox "请输入行数和列数相同的矩阵才可相减", vbOKOnly, "提示" End If
If d = p And n = q Then
ReDim c(1 To d, 1 To n) As Double
Open "d:矩阵D.txt" For Append As #4
For i = 1 To d
For j = 1 To n
c(i, j) = a(i, j) - b(i, j)
Picture3.Print c(i, j);
Print #4, c(i, j)
Next j
Picture3.Print
Next i
End If
Close #4
lab:
End Sub
Private Sub Command5_Click() Picture3.Cls
If d = 0 Or n = 0 Or p = 0 Or q = 0 Then
MsgBox "请先输入矩阵", vbOKOnly, "提示"
GoTo lab:
End If
If n <> p Then
MsgBox "请输入A矩阵列数和B矩阵行数相等的矩阵才可相乘", vbOKOnly, "提示"
End If
If n = p Then
ReDim c(1 To d, 1 To q) As Double
Open "d:矩阵E.txt" For Append As #5
For i = 1 To d
For j = 1 To q
For k = 1 To n
- 13 -
c(i, j) = a(i, k) * b(k, j) + c(i, j)
Next k
Picture3.Print c(i, j);
Print #5, c(i, j)
Next j
Picture3.Print
Next i
End If
Close #5
lab:
End Sub
Private Sub Command6_Click()
矩阵运算.Hide
关于.Show
End Sub
5(总结
通过这次实训,增加了我学习软件技术的兴趣,发现了程序设计的乐趣,在学习VB的过程中也学到了许多计算机应用基础知识,对计算机的机体也有了一个大体的了解。
在经过自己的编写,实现要求。在具体操作中对这学期所学的VB的理论知识得到巩固,达到实训的基本目的,也发现自己的不足之出,在以后的上机中应更加注意,同时体会到VB具有的语句简洁,使用灵活,执行效率高等特点。发现上机实训的重要作用,特别是对矩阵运算有了深刻的理解。
通过实际操作,学会 VB程序编程的基本步骤、基本方法,开发了自己的逻辑思维能力,培养了分析问题、解决问题的能力。深刻体会到“没有做不到的,只有想不到的”,“团结就是力量”,“实践是检验真理的标准”,“不耻下问”„„的寓意。
希望以后应多进行这样的实训,加长设间,培养学生独立思考问题的能力,提高实际操作水平。
- 14 -