가우스 소거법 단계 계산기
증강행렬을 넣으면 행 연산을 한 단계씩 보이며 기약 행 사다리꼴까지 만들고, 계수(rank)를 견주어 해가 하나인지 무수히 많은지 없는지 판정합니다. 분수로 계산해 반올림 오차가 없습니다.
한 줄에 한 방정식. 계수를 차례로 적고 마지막에 우변을 적습니다. 식 6개·미지수 6개까지.
해가 하나뿐입니다
x=2, y=1
계수(rank)가 미지수 개수 2와 같아 해가 하나로 정해집니다.
해
구한 해를 원래 식에 넣어 좌변과 우변이 정확히 같은지 확인했습니다. 분수로 계산하므로 «거의 같다»가 아니라 «같다»입니다.
해의 개수는 계수로 판정한다
| 조건 | 해 |
|---|---|
| rank(A) < rank([A|b]) | 없다 |
| rank(A) = rank([A|b]) = 미지수 | 하나뿐 |
| rank(A) = rank([A|b]) < 미지수 | 무수히 많다 |
크래머 공식은 행렬식이 0일 때 «해가 없거나 무수히 많다»까지만 말할 수 있지만, 가우스 소거법은 어느 쪽인지와 자유변수가 무엇인지까지 알려 줍니다. 식이 미지수보다 많거나 적어도 그대로 돌아갑니다.
행 연산 과정
처음 행렬
| 2 | 1 | 5 |
| 1 | -1 | 1 |
1. R1 ← R1 ÷ 2
| 1 | 1/2 | 5/2 |
| 1 | -1 | 1 |
2. R2 ← R2 − (1)·R1
| 1 | 1/2 | 5/2 |
| 0 | -3/2 | -3/2 |
3. R2 ← R2 ÷ -3/2
| 1 | 1/2 | 5/2 |
| 0 | 1 | 1 |
4. R1 ← R1 − (1/2)·R2
| 1 | 0 | 2 |
| 0 | 1 | 1 |
피벗은 아래 행 가운데 절댓값이 가장 큰 것을 골라 씁니다(부분 피벗팅). 실수로 계산할 때 반올림 오차를 줄이기 위한 것이며, 이 계산기는 분수로 계산해 오차가 없지만 교재의 절차를 그대로 보이기 위해 같은 규칙을 씁니다. 절댓값이 같으면 위쪽 행을 씁니다.
계산 방법
- 1한 줄에 한 방정식씩, 계수를 차례로 적고 마지막에 우변을 적습니다. 2x + y = 5는 「2 1 5」입니다.
- 2분수(3/4)와 소수(0.25)를 섞어 넣어도 됩니다. 모두 정확한 분수로 다룹니다.
- 3해의 개수 판정과 계수(rank)를 확인합니다.
- 4행 연산 과정에서 어느 행을 어느 행에서 빼는지, 피벗이 왜 바뀌는지 단계별로 봅니다.
자주 묻는 질문
계수행렬 A의 rank와 증강행렬 [A|b]의 rank를 견줍니다. 두 rank가 다르면 해가 없고, 같으면서 미지수 개수와 같으면 해가 하나뿐이며, 같지만 미지수보다 작으면 해가 무수히 많습니다. 마지막 경우 자유변수의 개수는 「미지수 − rank」입니다.
행렬식이 0일 때 답을 낼 수 있느냐가 다릅니다. 크래머 공식은 행렬식이 0이면 「해가 없거나 무수히 많다」까지만 말할 수 있지만, 가우스 소거법은 어느 쪽인지와 자유변수가 무엇인지까지 알려 줍니다. 식의 개수와 미지수의 개수가 달라도 그대로 돌아간다는 점도 다릅니다.
피벗이 0이면 그 열로 나눌 수 없고, 0에 가까우면 나눌 때 오차가 크게 불어나기 때문입니다. 그래서 아래 행 가운데 그 열의 절댓값이 가장 큰 행을 골라 바꿔 옵니다. 이 계산기는 분수로 계산해 오차 자체가 없지만, 교재의 절차를 그대로 보이기 위해 같은 규칙을 씁니다.
「이 값이 0인가」를 정확히 판정해야 하기 때문입니다. 1/3은 2진법에서 순환소수라 실수로 담으면 어긋나고, 소거 과정에서 0이 되어야 할 값이 0.0000000000000002처럼 남습니다. 그 값을 0이 아니라고 보면 rank를 잘못 세어 해의 개수를 틀리게 답합니다. 그래서 분자와 분모를 정수로 들고 다니며 계산합니다.
피벗이 없는 열의 변수를 자유변수로 두고, 나머지 변수를 그 자유변수의 식으로 나타냅니다. 예를 들어 x + 2y = 4에서 y가 자유변수라면 x = 4 − 2y이며, y에 아무 값이나 넣을 때마다 해가 하나씩 나옵니다. 어느 변수를 자유변수로 둘지는 유일하지 않아 교재와 모양이 다를 수 있으며, 나타내는 해집합은 같습니다.
전송되지 않습니다. 모든 계산은 브라우저 안에서 이뤄지고, 입력값은 이 기기에만 남습니다.
알아두면 좋은 점
- 검증은 2x+y=5·x−y=1(x=2, y=1)과 x+y+z=6·2y+5z=−4·2x+5y−z=27(x=5, y=3, z=−2), x+y=1·2x+2y=2(무수히 많다), x+y=1·x+y=2(없다)로 했습니다. 무작위 정수 행렬 1,000벌에서 유일해가 나올 때 구한 해를 원래 식에 넣어 좌변과 우변이 분수 그대로 정확히 같은지도 대조했습니다.
- 모든 계산은 분자·분모를 정수로 든 유리수로 합니다. 소수로 넣은 계수도 자릿수만큼 10을 곱해 정확한 분수로 바꿔 다루므로, 0.1이 1/10으로 정확히 들어갑니다.
- 피벗은 절댓값이 가장 큰 행에서 고르고, 같으면 위쪽 행을 씁니다. 규약을 밝히지 않으면 행 교환 순서가 재현되지 않습니다.
- 어느 변수를 자유변수로 둘지는 유일하지 않습니다. 이 계산기는 피벗이 놓이지 않은 열의 변수를 자유변수로 두며, 다른 선택을 한 교재와 식의 모양이 달라도 나타내는 해집합은 같습니다.
- 식 6개·미지수 6개까지 다룹니다. 행 연산 과정을 모두 보이는 것이 목적이라 그보다 크면 화면이 읽히지 않습니다.
함께 보면 좋은 도구
마지막 검증: 2026년 9월 1일 · 결과는 참고용 추정치입니다.