2x2 행렬식 구하기

CBeginner
지금 연습하기

소개

선형대수학에서 정사각 행렬의 행렬식 (determinant) 은 행렬의 원소로부터 계산될 수 있는 스칼라 값입니다. 이 랩에서는 C 프로그래밍을 사용하여 2x2 행렬의 행렬식을 구하는 방법을 배우겠습니다.

참고: 코딩을 연습하고 gcc 를 사용하여 컴파일하고 실행하는 방법을 배우려면 직접 ~/project/main.c 파일을 생성해야 합니다.

cd ~/project
## create main.c
touch main.c
## compile main.c
gcc main.c -o main
## run main
./main

개념 이해

시작하기 전에 행렬식의 개념을 이해해 봅시다. 2x2 행렬은 2 개의 행과 2 개의 열로 구성된 배열이며, 행렬식은 다음 공식을 사용하여 계산할 수 있습니다.

determinant = a[0][0]*a[1][1] - a[1][0]*a[0][1]

여기서 a[0][0], a[0][1], a[1][0], a[1][1]은 행렬의 원소입니다.

변수 초기화

C 프로그램에서 변수를 선언하고 초기화하는 것으로 시작합니다.

#include<stdio.h>

int main()
{
    int a[2][2], i, j;
    long determinant;

    printf("\n\nEnter the 4 elements of the array\n");
    for(i = 0; i < 2; i++)
    for(j = 0; j < 2; j++)
    scanf("%d", &a[i][j]);
}

행렬 요소 가져오기

이제 사용자에게 행렬의 원소를 입력하도록 요청합니다.

printf("\n\nEnter the 4 elements of the array\n");
for(i = 0; i < 2; i++)
    for(j = 0; j < 2; j++)
    scanf("%d", &a[i][j]);

입력된 행렬 출력

행렬 원소를 입력받은 후, 입력된 행렬을 출력합니다.

printf("\n\nThe entered matrix is: \n\n");
for(i = 0; i < 2; i++)
{
    for(j = 0; j < 2; j++)
    {
        printf("%d\t", a[i][j]);   // to print the complete row
    }
    printf("\n"); // to move to the next row
}

행렬식 계산

이제 행렬식을 계산합니다.

determinant = a[0][0]*a[1][1] - a[1][0]*a[0][1];
printf("\n\nDeterminant of 2x2 matrix is : %d - %d = %ld", a[0][0]*a[1][1], a[1][0]*a[0][1], determinant);

결과 출력

마지막으로, 결과를 출력합니다.

printf("\n\nThe determinant of the 2x2 matrix is %ld.", determinant);

요약

이 랩에서는 C 프로그래밍을 사용하여 2x2 행렬의 행렬식 (determinant) 을 구하는 방법을 배웠습니다. 변수를 초기화하고, 행렬 요소를 얻고, 입력된 행렬을 출력하고, 행렬식을 계산하고, 결과를 출력했습니다.