python解矩阵
【问题描述】编写一个程序,输入两个矩阵AN×N与BN×N(2<N<10)进行如下运算:1. 加
2. 减
3. 乘
【输入形式】
标准输入上依次输入以下内容:
1. 输入第一个矩阵AN×N。形式是N个输入行,每行有分别N个整数(可能为负数),代表矩阵AN×N的所有元素。各整数之间以一个或多个空格分隔。
2. 输入运算符,是一个字符,可以是"+"、"-"、"*",分别代表加、减、乘三种操作。
3. 输入第二个矩阵BN×N。形式与AN×N相同。
4. 以空行表示所有输入的结束。
【输出形式】在标准输出上打印运算结果,同样是输出N行,每行分别输出该行的N个元素。每个整数占据5个字符宽度(包括负号),向右对齐,不足部分补以空格。
【样例输入】
(下图中"#"代表一个空格)
5##7#12
3###-15# 4
2#6#7
+
41#8#9
7#6#12
2#4#6
【样例输出】
###46###15###21
###10###-9###16
####4###10###13
【样例说明】输入的A和B分别是两个三阶矩阵,要求进行加法运算,结果如上例所示。
【运行时限】要求每次运行时间限制在5秒之内。超出该时间则认为程序错误。
加法:
减法:
乘法:
AN = 1 ; BN = 1
AN_array = [] ; BN_array = []
while True:
AN = input('')
if AN == '':
break
AN_array.append()
operator = input('')
while True:
BN = input('')
if BN == '':
break
BN_array.append()
new_array = []
for i1 in range(len(AN_array)):
temp = []
for i2 in range(len(AN_array)):
if operator == "+":
temp.append('{:^5}'.format(int(AN_array)+int(BN_array)))
if operator == "-":
temp.append('{:^5}'.format(int(AN_array) - int(BN_array)))
if operator == "*":
temp.append('{:^5}'.format(int(AN_array) * int(BN_array)))
new_array.append(''.join(temp))
for i in new_array:
print(i)
页:
[1]