마방진 생성·검증기
n차 마방진을 만들고 행·열·두 대각선의 합을 확인합니다. 차수에 따라 샴 방식·대각선 교환·LUX 방식으로 갈라 만들며, 직접 넣은 정사각 배열이 마방진인지도 검증합니다.
차수 n
5차 마방진 · 샴 방식 (홀수 차)
한 줄의 합 65
n(n²+1)/2 = 5×(25+1)÷2
만든 마방진
| 17 | 24 | 1 | 8 | 15 | 65 |
| 23 | 5 | 7 | 14 | 16 | 65 |
| 4 | 6 | 13 | 20 | 22 | 65 |
| 10 | 12 | 19 | 21 | 3 | 65 |
| 11 | 18 | 25 | 2 | 9 | 65 |
| 65 | 65 | 65 | 65 | 65 |
가장자리 숫자가 각 행·열의 합입니다. 진하게 표시된 칸이 두 대각선입니다.
검사 항목
계산 방법
- 1차수 n을 고르면 마방진을 만들어 줍니다. 홀수·4의 배수·그 밖의 짝수마다 만드는 방법이 다릅니다.
- 2가장자리에 표시된 행·열의 합이 모두 같은지, 두 대각선도 같은지 봅니다.
- 3«검증하기»로 바꾸면 직접 넣은 정사각 배열이 마방진인지 확인할 수 있습니다.
자주 묻는 질문
n(n²+1)/2로 계산됩니다. 1부터 n²까지의 합이 n²(n²+1)/2이고 이것이 n개의 행에 고르게 나뉘기 때문입니다. 3차는 15, 4차는 34, 5차는 65입니다. 맞춰 넣는 값이 아니라 처음부터 정해져 있습니다.
1·2·3·4를 어떻게 놓아도 모든 줄의 합을 같게 할 수 없기 때문입니다. 필요한 합은 5인데, 4가 든 행과 1이 든 행이 동시에 5가 되려면 4+1과 2+3이 짝지어야 하고 그러면 열이나 대각선 하나가 반드시 어긋납니다. 1차는 [1] 하나뿐이라 자명하게 성립하고, 3차부터 실제로 만들 수 있습니다.
n을 4로 나눈 나머지에 따라 통하는 절차가 다르기 때문입니다. 홀수는 샴 방식(오른쪽 위로 올라가며 채우기), 4의 배수는 대각선 교환(순서대로 채운 뒤 일부를 반대편 값으로 바꾸기)을 씁니다. 6·10·14처럼 짝수이면서 4로 나눠지지 않는 차수는 두 방법이 모두 통하지 않아 콘웨이의 LUX 방식을 씁니다.
아닙니다. 1부터 n²까지가 한 번씩 들어 있어야 합니다. 3×3의 모든 칸에 5를 채우면 행·열·대각선의 합이 전부 15가 되지만 마방진이라 부르지 않습니다. 이 도구의 검증은 합과 함께 숫자가 겹치거나 빠지지 않았는지도 봅니다.
아닙니다. 3차는 회전·뒤집기를 같은 것으로 보면 하나뿐이지만, 4차는 880가지, 5차는 2억 7천만 가지가 넘습니다. 이 도구는 정해진 절차로 그중 하나를 만들어 주는 것이며, 다른 배치도 얼마든지 마방진일 수 있습니다.
전송되지 않습니다. 계산은 전부 브라우저 안에서 이뤄지고, 입력값은 이 브라우저의 localStorage에만 남습니다.
알아두면 좋은 점
- 여기서 만드는 것은 보통 마방진입니다. 어느 대각선을 감아서 세어도 합이 같은 완전 마방진(범대각선)은 조건이 따로 있어 다루지 않습니다.
- 화면에 담기도록 20차까지만 만듭니다.
- 검증은 행·열·두 대각선의 합과 1부터 n²까지의 사용 여부를 봅니다. 회전이나 뒤집기로 같은 마방진인지까지는 따지지 않습니다.
- 만든 마방진을 그대로 검증기에 넣어 통과하는지를 테스트로 확인해 두었습니다. 만드는 코드와 세는 코드가 서로 다른 논리라 한쪽이 틀리면 걸립니다.
함께 보면 좋은 도구
마지막 검증: 2026년 9월 1일 · 결과는 참고용 추정치입니다.