Viết chương trình python để cộng hai ma trận?

Hai danh sách bên trong matrixA là các hàng của ma trận. Số phần tử bên trong một hàng đại diện cho số cột

Ngoài ra, trong lập trình Python, việc lập chỉ mục bắt đầu từ 0. Vì vậy, khi chúng tôi chỉ định matrixA[2][4] trong chương trình, đó thực sự là

matrixC = matrixA + matrixB // where these are nested lists
0, phần tử của hàng thứ ba và cột thứ năm

Vì chúng ta đang sử dụng Danh sách để biểu diễn ma trận, bạn nên cẩn thận với kết quả của toán tử số học cho hai danh sách

Ví dụ, trong câu lệnh sau, kết quả của toán tử cộng không trả về danh sách phần tử bằng phép cộng phần tử của hai toán hạng, mà trả về một danh sách với các danh sách bên trong của toán hạng thứ hai được nối với các phần tử của toán hạng thứ nhất

matrixC = matrixA + matrixB // where these are nested lists
Chạy

Để tính phép cộng của hai ma trận, là danh sách các danh sách trong Python, bạn phải duyệt qua các hàng và cột, rồi tính phép cộng

Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách thực hiện Phép cộng ma trận trong Python bằng Danh sách

ví dụ 1. Chương trình Python để thêm hai ma trận bằng vòng lặp For

Trong ví dụ này, chúng ta sẽ lấy hai ma trận và tính phép cộng của chúng. Chúng ta sẽ sử dụng Python For Loop để duyệt qua tất cả các phần tử của ma trận

Chương trình Python

matrixA = [ [2, 1, 3], [3, 1, 5] ]
matrixB = [ [1, 4, 2], [5, 2, 0] ]

#matrix where we shall store our result
#intialize this to 0, with size as that of matrixA or matrixB
matrixC = [[0 for i in range[len[matrixA[0]]]] for j in range[len[matrixA]]]

#for each row in the matrix
for i in range[len[matrixB]]:
    #for each element in the row
	for j in range[len[matrixB[0]]]:
		matrixC[i][j] = matrixA[i][j] + matrixB[i][j]

print['  matrixA:', matrixA]
print['+ matrixB:', matrixB]
print['-------------------------------']
print['  matrixC:', matrixC]
Chạy

đầu ra

  matrixA: [[2, 1, 3], [3, 1, 5]]
+ matrixB: [[1, 4, 2], [5, 2, 0]]
-------------------------------
  matrixC: [[3, 5, 5], [8, 3, 5]]

ví dụ 2. Chương trình Python để thêm hai ma trận bằng cách sử dụng tính năng hiểu danh sách

Trong ví dụ này, chúng ta sẽ lấy hai ma trận và tính phép cộng của chúng. Chúng ta sẽ sử dụng Python List Comprehension để tính toán phép cộng ở cấp độ phần tử

Chương trình Python

matrixA = [ [2, 1, 3], [3, 1, 5] ]
matrixB = [ [1, 4, 2], [5, 2, 0] ]

matrixC = [[matrixA[i][j] + matrixB[i][j]  for j in range[len[matrixA[0]]]] for i in range[len[matrixA]]]

print['  matrixA:', matrixA]
print['+ matrixB:', matrixB]
print['-------------------------------']
print['  matrixC:', matrixC]
Chạy

Mã để thêm ma trận bằng cách sử dụng Danh sách hiểu rất ngắn gọn

đầu ra

  matrixA: [[2, 1, 3], [3, 1, 5]]
+ matrixB: [[1, 4, 2], [5, 2, 0]]
-------------------------------
  matrixC: [[3, 5, 5], [8, 3, 5]]

Tóm lược

Trong hướng dẫn về Ví dụ Python này, chúng ta đã học cách thực hiện Phép cộng ma trận trong Python bằng cách sử dụng vòng lặp For và khả năng hiểu Danh sách, với sự trợ giúp của các ví dụ chi tiết

Trong bài đăng này, bạn sẽ học cách viết chương trình python để cộng hai ma trận bằng cách lấy đầu vào của người dùng với giải thích và thuật toán rất đơn giản

Mục lục

Quy tắc cộng hai ma trận

Có thể cộng hai ma trận nếu số hàng và số cột của cả hai ma trận bằng nhau

GHI CHÚ. Ma trận có nghĩa là Danh sách 2D trong python

Thí dụ

matrix = [
    [1,2,3],
    [4,5,6],
    [7,8,9]
]

Thuật toán cộng hai ma trận

1. Yêu cầu người dùng nhập hàng [m] & cột [n] của ma trận. 2. Sử dụng chức năng input[] và khả năng hiểu danh sách tạo ra matrix_A
matrix_B của kích thước m x n. 3. Để lưu trữ kết quả, hãy tạo một ma trận khác [result] của cùng một
chiều m x n; . 4. Sử dụng vòng lặp for lồng nhau do
# matrix addition in python

rows = int[input['ENter number of rows: ']]
cols  = int[input['ENter number of column: ']]

print[] # for new line
print['Enter values for matrix A']

matrix_A = [[int[input[f"column {j+1} -> ENter {i+1} element:"]] for j in range[cols]] for i in range[rows] ]  

print[] # for new line
print['Enter values for matrix B ']

matrix_B = [[int[input[f"column {j+1} -> ENter {i+1} element:"]] for j in range[cols]] for i in range[rows] ]  

print[] #for new line

print['Matrix-A :']
for i in matrix_A:
    print[i]

print[] #for new line

print['Matrix-B :']
for i in matrix_B:
    print[i]

# resultant matrix [matrix that store answer and intially it is Zero]
result = [[0 for j in range[cols]] for i in range[rows]]

# addition
for i in range[rows]:
    for j in range[cols]:
        result[i][j] = matrix_A[i][j] + matrix_B[i][j]

print[] #for new line
print['Addition of Matrix-A and Matrix-B is :']

for i in result:
    print[i]
0. 5. Ma trận kết quả in cuối cùng [______7_______1]

Từ thuật toán trên, chúng ta đã hiểu cách triển khai chương trình python để cộng hai ma trận bằng cách lấy đầu vào từ người dùng

Hàm nào dùng để cộng hai ma trận trong Python?

Sử dụng ma trận. sum[] chúng ta có thể cộng tổng của hai ma trận.

Làm cách nào để thêm hai ma trận trong NumPy?

hàm add[] được sử dụng khi chúng ta muốn tính cộng hai mảng. Nó thêm đối số yếu tố khôn ngoan. Nếu hình dạng của hai mảng không giống nhau, đó là mảng1.

Làm thế nào chúng ta có thể thêm hai ma trận?

Một ma trận chỉ có thể được thêm vào [hoặc trừ đi] một ma trận khác nếu hai ma trận có cùng kích thước. Để cộng hai ma trận, chỉ cần thêm các mục tương ứng và đặt tổng này vào vị trí tương ứng trong ma trận sẽ cho kết quả .

Chủ Đề