python题目:实现矩阵运算
2019-01-12 22:25
267 查看
题目
- 分别构造2*2-2*5,3*2~3*5,4*2-4*5,5*2-5*5共16个矩阵
- 在屏幕端可以选择打印相关矩阵
- 程序运行后,只需提示有哪些类型的矩阵即可
- 实现矩阵运算,包括矩阵的乘法和矩阵的转置,在屏幕端选择运算类型以及需要进行运算的矩阵
- 单独定义并实现一个函数,要求可以判断两个矩阵之间是否可以进行乘法运算,返回布尔值(0或1),要求该函数呗矩阵的乘法功能所调用
- 需要构造类,并实现初始化函数及其成员
说明
- 2*3矩阵是指矩阵的行数是2行,列数是3列
库
- 用numpy库来实现该功能
代码
#2019.1.12 liu先僧 from numpy import * #创建矩阵类,包含矩阵的行、列和内容以及操作 class Matrix: def __init__(self,row,column,ele): self.row = row self.column = column self.ele = ele def Multiply(m1,m2): if judge(m1,m2) == 1: print(m1.ele*m2.ele) else: print("Can not Multiply!") def Transpose(m): print(m.ele.T) #判断两个矩阵是否可以相乘的函数 def Judge(m1,m2): if m1.column == m2.row: return 1 else: return 0 #创建一个储存矩阵的字典,例如matrixs['2*2'] = [[1,2],[3,4]] matrixs = {} #初始化,输入矩阵 print("Please input 16 matrices one by one, for example [[1,2],[3,4]] is a matrix of 2 rows and 2 columns.") for i in range(2,6): for j in range(2,6): print("Please enter the matrix of the {0} row {1} column".format(i,j)) row = i column = j ele = mat(eval(input())) name = str(i) + '*' + str(j) matrixs[name] = Matrix(row,column,ele) #菜单,可以进行矩阵的打印、乘法以及转置 while(True): print("Input:\n1:to Print\n2:to Multiply or Transpose\n3:to Quit")#菜单 op = int(input()) if op == 1:#矩阵的打印 print("Input the matrix you want to output like 2*2") s = input() print(matrixs[s].ele) while(True):#输入 1 继续 print("Input 1 to continue!") a = int(input()) if a == 1: break elif op == 2:#矩阵的运算 print("Input:\n1:to Multiply\n2:to Transpose\n3:to Quit") b = int(input()) if b == 1:#矩阵的乘法 print("Input the first Matrix") s1 = input() print("Input the other Matrix") s2 = input() m1 = matrixs[s1] m2 = matrixs[s2] Matrix.Multiply(m1,m2) elif b == 2:#矩阵的转置 print("Input the Matrix") s = input() m = matrixs[s] Matrix.Transpose(m) elif b == 3:#退出 print("Quit Successfully!") continue else: print("INPUT ERROR!") elif op == 3: print("Quit Successfully!") break else: print("INPUT ERROR!")
相关文章推荐
- Python求矩阵特征值及特征向量和实现对角化矩阵简化矩阵n次方运算
- 实现自动生成30道四则运算题目(2)
- 矩阵的QR分解(三种方法)Python实现
- Python2.7基于笛卡尔积算法实现N个数组的排列组合运算示例
- C/C++语言实现矩阵求逆运算—高斯约化/消元法
- Java调用jama实现矩阵运算
- Python 使用单链表实现简单的稀疏矩阵
- [置顶] Python数据相关系数矩阵和热力图轻松实现
- 【编程题目】对于一个整数矩阵,存在一种运算,对矩阵中任意元素加一时,需要其相邻(上下左右)某一个元素也加一
- JS实现简单的二维矩阵乘积运算
- Python实现矩阵相乘的三种方法
- 实现自动生成30道四则运算题目(4)
- C++矩阵运算实现
- python之numpy库学习常用函数(矩阵运算)
- python中矩阵(matrix或array)运算比for循环速度更快
- python实现矩阵乘法的方法
- Python之产生泊松分布随机数,并进行矩阵的简单运算
- python实现矩阵乘法
- 稀疏矩阵之python实现