บทนำ
Identity Matrix คือ matrix สี่เหลี่ยมจัตุรัสที่มี 1 บนเส้นทแยงมุม และ 0 ที่เหลือ สามารถพิมพ์ได้โดยใช้ nested loop เปรียบเทียบ index แถวและคอลัมน์
ตัวอย่างโค้ด
def print_identity_matrix(n):
for i in range(n):
row = []
for j in range(n):
row.append('1' if i == j else '0')
print(' '.join(row))
# ทดสอบ
n = 4
print(f"Identity Matrix {n}x{n}:")
print_identity_matrix(n)
ผลลัพธ์
Identity Matrix 4x4: 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1
คำอธิบาย
- Outer loop: แถว (i = 0 ถึง n-1)
- Inner loop: คอลัมน์ (j = 0 ถึง n-1)
- ถ้า
i == j(บนเส้นทแยง) → 1, ไม่ใช่ → 0 - สร้างลิสต์ row แล้ว
joinพิมพ์ทีละแถว
รูปแบบสั้น (List Comprehension)
n = 4
matrix = [['1' if i == j else '0' for j in range(n)] for i in range(n)]
for row in matrix:
print(' '.join(row))
ใช้ NumPy (แนะนำสำหรับคำนวณจริง)
import numpy as np print(np.eye(4, dtype=int)) # [[1 0 0 0] # [0 1 0 0] # [0 0 1 0] # [0 0 0 1]]