py list matrix 2d add
Penjumlahan dua buah matriks memerlukan syarat ukuran keduanya harus sama [ 1 ]. Pemanfaatan list tersebut dalam penjumlahan dua buah matriks dan bagaimana menampilkan isinya disajikan di sini secara sederhana dan ringkas. Matriks yang dimaksud adalah matriks 2d.
matrix addition
Terdapat matriks
\begin{equation}\label{eqn:matrix-a} A = \left[ \begin{array}{ccc} a_{11} & a_{12} & a_{13} \newline a_{21} & a_{22} & a_{23} \end{array} \right] \end{equation}
dan
\begin{equation}\label{eqn:matrix-b} B = \left[ \begin{array}{ccc} b_{11} & b_{12} & b_{13} \newline b_{21} & b_{22} & b_{23} \end{array} \right] \end{equation}
yang akan dijumlahkan
\begin{equation}\label{eqn:matrix-c=a+b} C = A + B \end{equation}
dengan hasilnya
\begin{equation}\label{eqn:matrix-c} C = \left[ \begin{array}{ccc} c_{11} & c_{12} & c_{13} \newline c_{21} & c_{22} & c_{23} \end{array} \right]. \end{equation}
Dan berlaku
\begin{equation}\label{eqn:matrix-addition} c_{ij} = a_{ij} + b_{ij}, \end{equation}
yang mengaitkan setiap elemen dari ketiga matriks pada Persamaan \eqref{eqn:matrix-a}, \eqref{eqn:matrix-b}, dan \eqref{eqn:matrix-c} melalui operasi penjumlahan dua buah matriks pada Persamaan \eqref{eqn:matrix-c=a+b}, di mana detil operasinya diberikan oleh Persamaan \eqref{eqn:matrix-addition}. Dan hubungan ini yang dapat diterapkan dalam suatu bahasa pemrograman tertentu.
a code
Sebuah pustaka Python bernama matrix.py
yang sekurangnya berisikan
# matrix.py
# Simple matrix library using list
# 20220216 Create this example.
# print only two-dimension matrix in form of a list
def printmat(m):
# assume that all rows have the same columns
row = len(m)
col = len(m[0])
# iterate through rows then colums
for r in range(row):
for c in range(col):
print(m[r][c], end='\t')
print()
akan dipanggil oleh program berikut ini
# 0480-matrix-no-numpy-add.py
# Add two matrices
# 20220216 Create this example.
import matrix as mat
# add two two-dimension matrices in form of a list
def addmat(m1, m2):
# assume both matrices have the same dimension
row = len(m1)
col = len(m1[0])
# create empty matrix
m3 = []
# iterate through rows then colums
for r in range(row):
newrow = []
for c in range(col):
newcol = m1[r][c] + m2[r][c]
newrow.append(newcol)
m3.append(newrow)
return m3
# define a list as two-dimension matrix
m1 = [
[1, 2, 3],
[4, 5, 6]
]
m2 = [
[1, -2, -3],
[1, -4, 3]
]
m3 = addmat(m1, m2)
# display results
print("m1:")
mat.printmat(m1)
print("m2:")
mat.printmat(m2)
print("m3 = m1 + m2:")
mat.printmat(m3)
sehingga memberikan
==== RESTART: 0480-matrix-no-numpy-add.py ====
m1:
1 2 3
4 5 6
m2:
1 -2 -3
1 -4 3
m3 = m1 + m2:
2 0 0
5 1 9
sebagai hasilnya. Perhatkan bahwa berkas matrix.py
perlu diletakkan pada folder yang sama dengan berkas utama 0480-matrix-no-numpy-add.py
saat berkas utama dijalankan.
Modifikasi kode di atas, sehingga mat
dapat tetap digunakan, dapat dijalankan di OneCompiler
3xtjdsdbh
, yang memerlukan definisi suatu namespace mat
berisikan fungsi yang diperlukan untuk menggantikan baris import matrix as mat
#import matrix as mat
class mat:
# print only two-dimension matrix in form of a list
def printmat(m):
# assume that all rows have the same number of columns
row = len(m)
col = len(m[0])
# iterate through rows then colums
for r in range(row):
for c in range(col):
print(m[r][c], end='\t')
print()
agar tidak perlu mengubah baris kode yang lain. Penggunaan pustaka matrix
ini adalah untuk menyembuyikan fungsi-fungsi yang bukan menjadi fokus pembahasan di sini sehingga contoh program dapat masih cukup ringkas.
exer
- Apa syarat Persamaan \eqref{eqn:matrix-addition} berlaku?
note
- abhishek16bit1112, “Properties of Matrix Addition and Scalar Multiplication | Class 12 Maths”, GeeksforGeeks, 09 Nov 2020, url https://www.geeksforgeeks.org/properties-of-matrix-addition-and-scalar-multiplication-class-12-maths/ [20220216].