以下是使用 VB 编写的控制台程序,实现矩阵加法、转置和乘法运算。

Module Module1
    Sub Main()
        Console.WriteLine('请输入第一个矩阵的行数和列数:')
        Dim m As Integer = Convert.ToInt32(Console.ReadLine())
        Dim n As Integer = Convert.ToInt32(Console.ReadLine())
        Dim matrix1(m - 1, n - 1) As Integer

        Console.WriteLine('请输入第一个矩阵的元素:')
        For i As Integer = 0 To m - 1
            For j As Integer = 0 To n - 1
                matrix1(i, j) = Convert.ToInt32(Console.ReadLine())
            Next
        Next

        Console.WriteLine('请输入第二个矩阵的行数和列数:')
        Dim p As Integer = Convert.ToInt32(Console.ReadLine())
        Dim q As Integer = Convert.ToInt32(Console.ReadLine())
        Dim matrix2(p - 1, q - 1) As Integer

        Console.WriteLine('请输入第二个矩阵的元素:')
        For i As Integer = 0 To p - 1
            For j As Integer = 0 To q - 1
                matrix2(i, j) = Convert.ToInt32(Console.ReadLine())
            Next
        Next

        Console.WriteLine('第一个矩阵加法结果:')
        If m = p And n = q Then
            Dim sumMatrix(m - 1, n - 1) As Integer
            For i As Integer = 0 To m - 1
                For j As Integer = 0 To n - 1
                    sumMatrix(i, j) = matrix1(i, j) + matrix2(i, j)
                    Console.Write(sumMatrix(i, j) & " ")
                Next
                Console.WriteLine()
            Next
        Else
            Console.WriteLine('两个矩阵行列数不相等,无法进行加法运算。')
        End If

        Console.WriteLine('第一个矩阵转置结果:')
        Dim transposeMatrix(n - 1, m - 1) As Integer
        For i As Integer = 0 To m - 1
            For j As Integer = 0 To n - 1
                transposeMatrix(j, i) = matrix1(i, j)
                Console.Write(transposeMatrix(j, i) & " ")
            Next
            Console.WriteLine()
        Next

        Console.WriteLine('两个矩阵乘法结果:')
        If n = p Then
            Dim productMatrix(m - 1, q - 1) As Integer
            For i As Integer = 0 To m - 1
                For j As Integer = 0 To q - 1
                    productMatrix(i, j) = 0
                    For k As Integer = 0 To n - 1
                        productMatrix(i, j) += matrix1(i, k) * matrix2(k, j)
                    Next
                    Console.Write(productMatrix(i, j) & " ")
                Next
                Console.WriteLine()
            Next
        Else
            Console.WriteLine('第一个矩阵的列数不等于第二个矩阵的行数,无法进行乘法运算。')
        End If

        Console.ReadLine()
    End Sub
End Module

此程序首先要求用户输入两个矩阵的行数和列数,然后逐个输入矩阵的元素。然后,程序对两个矩阵进行加法运算,如果两个矩阵的行数和列数相等。然后,程序计算第一个矩阵的转置,并输出结果。最后,程序计算两个矩阵的乘法,并输出结果。如果两个矩阵的行数和列数不满足加法或乘法的条件,则会显示相应的错误消息。

VB 控制台程序:矩阵加法、转置和乘法运算

原文地址: https://www.cveoy.top/t/topic/pjuy 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录