Skip to content

Python 609 矩陣相加

Python TQC

題目說明:

請撰寫一程式,讓使用者建立兩個2*2的矩陣,其內容為從鍵盤輸入的整數,接著輸出這兩個矩陣的內容以及它們相加的結果。

輸入與輸出會交雜如下,輸出的部份以粗體字表示

Enter matrix 1:

[1, 1]: 3
[1, 2]: 5
[2, 1]: 7
[2, 2]: 5
Enter matrix 2:
[1, 1]: 6
[1, 2]: 9
[2, 1]: 8
[2, 2]: 3

Matrix 1:
3 5 
7 5 
Matrix 2:
6 9 
8 3 
Sum of 2 matrices:
9 14 
15 8 


題目解析

問題分析:

這個問題要求編寫一個程式,讓使用者輸入兩個2x2的矩陣,然後輸出這兩個矩陣的內容以及它們相加的結果。

解題思路:

  1. 矩陣的輸入:首先,需要讓使用者分別輸入兩個2x2矩陣的元素。用戶的輸入格式是按行和列輸入的,因此我們可以使用巢狀迴圈來進行輸入。

  2. 矩陣的相加:將兩個矩陣的對應元素進行相加,得到新的矩陣。這可以通過同樣的巢狀迴圈進行。

  3. 輸出結果:輸出原始的兩個矩陣以及它們的和。輸出格式需要符合題目要求。

思考方向:

  1. 矩陣相加的處理:確保將兩個矩陣的對應元素進行相加並將結果儲存起來。

  2. 輸出結果的格式化:確保輸出的矩陣以合適的格式呈現,並按照題目要求輸出相加的結果。

  3. 用戶輸入的處理:確保用戶輸入的格式符合預期,並將其轉換為矩陣結構以便後續處理。

Solution
l = [[[0 for i in range(2)] for j in range(2)]for k in range(2)]
for i in range(2):
    print("Enter matrix %d:"%(i+1))
    for j in range(2):
        for k in range(2):
            print("[{}, {}]: ".format((j+1), (k+1)), end = "")
            a = eval(input())
            l[i][j][k] = a
for i in range(2):
    print("Matrix %d:"%(i+1))
    for j in range(2):
        for k in range(2):
            print("{}".format(l[i][j][k]),end = " ")
        print()
print("Sum of 2 matrices:")
for i in range(2):
    for j in range(2):
        print("{}".format(l[0][i][j]+l[1][i][j]), end = " ")
    print()

Last update : 13 novembre 2024
Created : 13 novembre 2024

Comments

Comments