Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

파이썬(Python)으로 항등 행렬 출력하기 – 중첩 반복문 활용법

항등 행렬(Identity Matrix)은 주대각선의 요소가 모두 1이고, 나머지 요소는 모두 0인 정사각형 행렬을 의미합니다. 파이썬에서 항등 행렬을 출력하려면 중첩 반복문(nested loop)을 활용하는 것이 가장 간단하고 효과적인 방법입니다.

아래는 항등 행렬을 출력하는 프로그램의 예시입니다.

예제 코드

n = 4
print("n의 값이 다음과 같이 초기화되었습니다: " + str(n))
for i in range(0, n):
    for j in range(0, n):
        if i == j:
            print("1", sep=" ", end=" ")
        else:
            print("0", sep=" ", end=" ")
    print()

실행 결과

n의 값이 다음과 같이 초기화되었습니다: 4
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1

코드 설명

  • 변수 'n'에 행렬의 크기를 나타내는 값(4)을 초기화합니다.
  • 첫 번째 'for' 반복문이 0부터 n까지 행(row)을 순회합니다.
  • 그 안에 중첩된 두 번째 'for' 반복문이 0부터 n까지 열(column)을 순회합니다.
  • 행 인덱스(i)와 열 인덱스(j)가 서로 같으면, 즉 주대각선 위치라면 '1'을 출력합니다.
  • 두 값이 같지 않다면 콘솔에 '0'을 출력합니다.
  • 한 행의 출력이 끝나면 print()를 호출해 줄바꿈을 수행하여 행렬 형태로 결과가 표시됩니다.

이처럼 조건문과 중첩 반복문만으로도 별도의 라이브러리 없이 손쉽게 항등 행렬을 생성할 수 있습니다. 참고로, NumPy 라이브러리를 사용한다면 np.identity(n) 함수를 통해 한 줄로 동일한 결과를 얻을 수도 있습니다.