나머지만으로 전체 수를 찾을 수 있을까?
『손자산경』의 물건 세기 — 세 개의 단서를 합치고 답의 범위를 따지다
셋씩 세면 둘, 다섯씩 세면 셋, 일곱씩 세면 둘이 남습니다. 물건은 모두 몇 개일까요? 중국 『손자산경』의 계산을 후보 비교표와 반복 도식으로 읽고, 70·21·15가 각 조건을 따로 맡는 이유를 살펴봅니다. 23을 찾는 일과 답이 하나임을 보이는 일도 구별합니다.
짧게 묻고, 정확하게 확인합니다.
손자산경 나머지 문제의 가장 작은 답은 무엇인가요?
3으로 나누면 2, 5로 나누면 3, 7로 나누면 2가 남는 가장 작은 양의 수는 23입니다.
23 다음에도 같은 조건을 만족하는 수가 있나요?
있습니다. 3, 5, 7의 최소공배수인 105를 더하면 같은 나머지 조건이 반복되므로 128, 233처럼 이어집니다.
물건을 전부 세어 둔 기록은 사라졌습니다. 대신 세 가지 메모가 남았습니다. 셋씩 묶으면 두 개가 남고, 다섯씩 묶으면 세 개가 남으며, 일곱씩 묶으면 두 개가 남는다는 것입니다. 작은 조각처럼 보이는 이 정보로 전체 수를 되찾을 수 있을까요?
이 질문은 중국의 오래된 수학서 『손자산경』에 등장합니다. 책은 23이라는 답과 함께, 나머지에 각각 70·21·15를 곱해 더하는 계산법을 전합니다. 처음에는 외워야 할 특별한 수처럼 보입니다. 그러나 세 수를 나란히 놓고 나머지를 비교하면 각 수가 맡은 역할이 드러납니다.
이번 글의 핵심은 두 가지입니다. 여러 조건이 서로를 방해하지 않게 합쳐지는 이유, 그리고 조건이 정하는 범위입니다. 수를 찾는 계산을 따라간 다음에는 ‘23도 맞다’에서 ‘23만 맞다’로 넘어갈 때 무엇이 더 필요한지 확인합니다. 아래 표·색·상자·화살표는 모두 오늘의 독자를 위한 자체 제작 재구성입니다.
저자의 전기보다 오래 전해진 계산
『손자산경』의 저자 손자에 관해서는 확실한 전기 자료가 거의 없습니다. 『손자병법』의 손무와 같은 사람으로 보아서도 곤란합니다. 성립 시점은 대체로 서기 3~5세기의 범위에서 논의되지만, 전승 중 여러 층의 내용이 더해졌을 가능성 때문에 특정 연도를 확정하기 어렵습니다.[1]
전해지는 책은 세 권으로 이루어집니다. 단위와 산가지 계산, 분수·넓이·부피 등을 다루는 문제들 사이에 나머지 문제가 놓여 있습니다. 산가지는 계산할 수를 자리에 맞추어 늘어놓는 작은 막대입니다. 여기서 다룰 문제는 하권의 26번으로 알려져 있으며, 알 수 없는 물건 수와 세 가지 묶음 조건을 제시합니다.[1]
이 책은 당나라의 수학 교육에서 쓰인 ‘산경십서’에 포함됩니다. 오래된 계산서가 교육용으로 정리되고 주석과 함께 전해졌다는 맥락이 중요합니다. 오늘 우리가 읽는 것은 어느 날 한 사람이 떠올린 생각을 그대로 받아 적은 기록이라기보다, 여러 세대가 배우고 전한 수학 문헌입니다.[2]
아래 연표는 그 전승을 읽기 위한 세 지점입니다. 첫 칸은 성립 시기의 추정 범위, 둘째는 교육과 전승의 맥락, 셋째는 훗날 더 넓은 나머지 문제를 다룬 저술입니다. 칸의 간격은 실제 시간 간격과 비례하지 않습니다. 자료가 남지 않은 기간을 확정된 발전 단계로 채워 넣지 않았습니다.
13세기 진구소의 『수서구장』은 1247년에 나왔습니다. 이 책은 나누는 수들이 공약수를 갖는 경우까지 다루며 나머지 문제의 절차를 넓혔습니다. 다만 이번 글에서는 그 일반적인 절차를 모두 복원하지 않고, 『손자산경』의 3·5·7 문제에서 독자가 직접 검산할 수 있는 구조에 집중합니다.[3]
나머지는 전체 수의 후보를 남긴다
‘셋씩 묶으면 둘이 남는다’는 말은 물건이 두 개뿐이라는 뜻이 아닙니다. 2개, 5개, 8개, 11개처럼 셋을 계속 더한 수가 모두 가능합니다. 남김없이 묶인 부분의 크기는 모르지만, 묶고 남은 부분은 안다는 말입니다. 하나의 조건은 수 하나 대신 후보들의 줄을 만듭니다.
같은 방식으로 다섯씩 묶어 셋이 남는 후보는 3, 8, 13, 18, 23…입니다. 앞의 조건과 동시에 맞는 수를 고르면 8, 23, 38, 53…이 남습니다. 두 줄의 후보가 만나는 간격은 15입니다. 15는 3으로도 5로도 남김없이 나뉘므로, 여기에 15를 더해도 두 나머지가 함께 유지됩니다.
이제 일곱씩 묶는 조건을 검사합니다. 아래 표는 0 이상 105 미만에서 처음 두 조건을 통과한 일곱 후보를 빠짐없이 적은 것입니다. ‘처음 두 조건 통과’라는 범위를 읽어야 합니다. 0부터 104까지의 모든 수를 나열한 표는 아닙니다.
| 두 조건의 후보 | 7로 나눈 나머지 | 세 조건 모두 |
|---|---|---|
| 8 | 1 | 다른 나머지 |
| 23 | 2 | 충족 |
| 38 | 3 | 다른 나머지 |
| 53 | 4 | 다른 나머지 |
| 68 | 5 | 다른 나머지 |
| 83 | 6 | 다른 나머지 |
| 98 | 0 | 다른 나머지 |
표의 가운데 열은 1, 2, 3, 4, 5, 6, 0으로 바뀝니다. 후보 사이의 차이 15를 7로 나누면 1이 남기 때문에, 한 칸 내려갈 때마다 나머지도 한 칸씩 움직입니다. 다음 후보 113에서는 나머지가 다시 1로 돌아옵니다. 이 작은 반복이 답의 간격을 설명할 준비가 됩니다.
질문 1. ‘다섯씩 묶어 셋이 남는다’와 ‘일곱씩 묶어 둘이 남는다’만 보고 23을 골랐습니다. 세 조건을 모두 확인한 것일까요? 해설: 58도 이 두 조건을 충족합니다. 58은 5×11+3이고 7×8+2이지만, 3으로 나누면 1이 남습니다. 두 조건의 충족은 세 조건의 충족과 다릅니다. 모든 조건을 만족한다고 주장하려면 셋씩 묶는 조건까지 확인해야 합니다.
70·21·15는 왜 서로 다른 역할을 맡을까?
후보를 차례대로 검사하는 방법은 이해하기 쉽습니다. 『손자산경』이 전하는 계산법은 다른 길을 택합니다. 세 나머지에 각각 70, 21, 15를 곱하고 그 결과를 합칩니다. 이 세 계수와 105씩 줄이는 절차는 대학 수학사 자료가 소개한 원전 내용에서 확인했습니다. 아래의 역할 분석은 그 계산을 설명하기 위해 새로 구성했습니다.[1]
70을 봅시다. 5로 나누면 14묶음, 7로 나누면 10묶음으로 정확히 끝납니다. 그런데 3으로 나누면 23묶음 뒤에 1이 남습니다. 따라서 어떤 수에 70을 더하면, 5와 7로 나눈 나머지는 유지되고 3으로 나눈 나머지만 한 칸 움직입니다. 70은 셋씩 묶는 조건을 조정하는 데 적합합니다.
21은 3과 7로 나누어떨어지고 5로 나누면 1이 남습니다. 15는 3과 5로 나누어떨어지고 7로 나누면 1이 남습니다. 세 수를 이렇게 고르면 한 조건을 맞추려고 보탠 수가 다른 두 조건에서는 온전한 묶음이 됩니다. 서로 다른 담당 업무를 가진 세 조각으로 전체를 조립하는 셈입니다.
그림은 위에서 아래로 읽어도 되고, 같은 나눗수를 세 카드에서 비교해도 됩니다. 3으로 나누는 칸에서는 70만 1을 남깁니다. 5로 나누는 칸에서는 21만, 7로 나누는 칸에서는 15만 1을 남깁니다. 이 대응이 곱셈과 덧셈의 순서를 정합니다.
70을 직접 찾아볼 수도 있습니다. 다른 두 수인 5와 7의 배수여야 하므로 35, 70, 105…를 살펴봅니다. 35는 3으로 나누면 2, 70은 1이 남습니다. 원하는 역할에 맞는 첫 수가 70입니다. 21과 15는 각각 3×7, 3×5 자체가 남은 나눗수에 대해 나머지 1을 갖습니다. 세 계수의 생김새가 달라도 선택 기준은 같습니다.
233을 만든 뒤 210을 빼도 단서가 남는다
이제 필요한 나머지 2·3·2를 각 담당 수에 곱합니다. 70×2=140, 21×3=63, 15×2=30입니다. 세 수의 합은 233입니다. 3으로 나누어 보면 140에서 2가 남고 나머지 두 항은 정확히 나뉩니다. 5로 나누면 63에서 3이, 7로 나누면 30에서 2가 남습니다. 합친 수가 세 조건을 한꺼번에 만족합니다.
233에서 더 작은 답을 얻을 수 있습니다. 3×5×7=105는 세 나눗수 모두의 배수입니다. 따라서 105를 더하거나 빼는 일은 세 조건에서 완전한 묶음을 더하거나 빼는 일입니다. 233에서 105를 두 번 빼면 23입니다. 210을 골라 빼는 까닭은 정답에 맞추기 위해서가 아니라, 나머지를 유지하며 수를 0 이상 105 미만으로 줄이기 위해서입니다.
마지막에는 원래 조건으로 돌아갑니다. 23=3×7+2, 23=5×4+3, 23=7×3+2입니다. 계산의 중간 줄끼리 맞는지만 보는 것보다 출발점의 세 질문에 다시 대입하는 편이 실수를 찾기 쉽습니다. 각 상자의 결과와 각 화살표의 이유를 따로 점검해 보세요.
질문 2. 233에서 210 대신 200을 빼면 더 작은 33이 됩니다. 이 수를 답으로 써도 될까요? 해설: 33은 3으로 나누면 0, 5로 나누면 3, 7로 나누면 5가 남습니다. 200은 5의 배수여서 다섯씩 묶는 조건만 보존합니다. 수가 작아졌다는 사실만으로 세 조건이 유지되었다고 판단할 수 없습니다.
23이 맞다는 것과 23만 맞다는 것은 다르다
물건의 수가 128이라면 어떨까요? 128=3×42+2이고, 5×25+3이며, 7×18+2입니다. 세 나머지가 모두 같습니다. 앞에서 233도 통과했습니다. 따라서 물건의 수에 다른 제한이 없다면 23, 128, 233, 338…이 모두 가능합니다. 책이 전하는 답 23을 현대적인 해의 집합으로 읽을 때는 가장 작은 양의 답과 전체 가능한 답을 구별해야 합니다.
왜 간격이 105일까요? 두 수가 3으로 나눈 나머지가 같다면 두 수의 차이는 3의 배수입니다. 5와 7에 대해서도 마찬가지입니다. 세 조건을 함께 충족하는 두 수의 차이는 3·5·7 모두의 배수여야 합니다. 이 세 수는 서로 다른 소수이므로 그 차이는 105의 배수입니다. 23이 실제로 조건을 만족한다는 사실과 결합하면 가능한 양의 수 전체를 설명할 수 있습니다.
그러므로 ‘0 이상 105 미만에서 찾는다’는 범위를 더하면 답은 23 하나입니다. 서로 다른 두 답이 이 범위 안에 있다면 차이의 절댓값이 105보다 작아야 하는데, 동시에 105의 양의 배수여야 하므로 모순입니다. 한 답의 존재는 직접 대입으로, 범위 안에서의 유일성은 두 답이 있다고 가정해 그 차이를 따지는 방법으로 확인했습니다.
오늘날 중국인의 나머지 정리라고 부르는 일반 정리는 나누는 수들이 쌍마다 서로소일 때, 그 수들의 곱을 주기로 해가 하나로 정해진다고 설명합니다. ‘서로소’는 공통인 양의 약수가 1뿐이라는 뜻입니다. NIST의 현대 정리 설명에서 이 조건과 유일성의 범위를 대조했습니다. 그 일반 정리를 고대 문헌에 현대 기호 그대로 실려 있던 주장처럼 소개하지는 않습니다.[4]
그림의 구간 제목을 가리고 23만 남겨 보세요. 그때는 ‘여러 가능한 수 가운데 한 수’입니다. 첫 구간의 제목을 다시 붙이면 ‘이 구간에서 유일한 수’가 됩니다. 결론의 강도는 같은 숫자를 얼마나 크게 쓰는지가 아니라, 어떤 범위와 조건을 함께 적는지에 달려 있습니다.
묶음의 나머지를 달력의 주기로 바꿔 보자
물건 묶음 대신 가상의 전시 일정으로 바꾸어 보겠습니다. 기준일을 0일째라고 정합니다. 설치물 가는 2일째부터 3일마다, 나는 3일째부터 5일마다, 다는 2일째부터 7일마다 점검합니다. 세 점검이 처음으로 같은 날에 놓이는 때는 언제일까요? 날짜의 월·일과 실제 휴일은 고려하지 않는 수학 모형입니다.
가는 2, 5, 8…일째, 나는 3, 8, 13…일째, 다는 2, 9, 16…일째에 점검합니다. 앞에서 읽은 세 후보의 줄과 같습니다. 따라서 최초로 겹치는 날은 23일째입니다. 기준일을 하루 바꾸면 모든 날짜의 표기를 함께 바꾸어야 합니다. 한 일정의 시작일만 옮기는 것은 표현을 바꾸는 일이 아니라 조건 자체를 바꾸는 일입니다.
질문 3. 세 기록이 물건 23개와 128개를 구별하지 못한다면 어떤 추가 정보로 실제 수를 고를 수 있을까요? 해설: ‘100개 미만’이라는 조건을 알면 23개를 고릅니다. ‘100개 이상 200개 미만’이라면 128개입니다. 범위 정보 없이 나머지 기록만 반복해서 읽어도 둘은 구별되지 않습니다. 새로운 결론에는 새로운 구별 근거가 필요합니다.
현대 계산에서도 큰 정수를 여러 작은 나머지로 나누어 계산한 뒤 결과를 합치는 발상이 쓰입니다. NIST는 중국인의 나머지 정리를 이용한 큰 수 계산을 소개합니다. 이때도 복원할 값의 범위를 알아야 원래 값 하나를 고를 수 있습니다. 이 글의 점검 일정은 그 정리를 익히기 위한 자체 예시이며, 고대에 이 전시 일정이 있었거나 현대 컴퓨터를 염두에 두었다는 뜻은 아닙니다.[4]
전해진 계산과 오늘의 설명을 구별한다
이번 글에서 역사 문헌의 내용으로 확인한 것은 3·5·7로 세어 2·3·2가 남는 물음, 답 23, 그리고 70·21·15와 105를 사용하는 절차입니다. 대학 수학사 자료에 제시된 문헌 해설과 번역된 문제를 읽었습니다. 고문헌 실물이나 원전 전체를 직접 대조했다고 주장하지 않습니다. 저자의 정확한 생몰년과 단일한 집필 연도도 확정하지 않았습니다.[1]
나머지 역할 카드, 0~104의 후보 비교표, 두 답의 차이를 사용하는 유일성 설명, 4·6의 반례, 전시 일정은 오늘의 학습을 위해 재구성했습니다. 역사 속 계산에 담긴 구조를 이해하는 데 유용하지만, 원전의 실제 종이 배치나 산가지 배열을 재현한 도판은 아닙니다. 그림이 선명할수록 이런 구별을 캡션에 남겨야 합니다.
앞선 유휘 편은 넓이를 옮기거나 조건을 소거하면서 관계를 보존했습니다. 이번에는 한 나머지를 조절하면서 다른 나머지를 유지하고, 여러 후보를 같은 반복 구간으로 묶었습니다. 같은 중국 수학의 사례라도 독자가 확인하는 질문은 달라집니다. 어떤 정보가 남아 있는가, 어떤 후보가 함께 가능한가, 결론을 하나로 좁히려면 어떤 조건이 더 필요한가를 차례로 묻는 읽기입니다.
출처와 도해 안내
2026년 9월 21일 아래 대학·공공기관 자료를 실제 열어 확인했습니다. 역사 문헌은 대학 자료가 제시한 해설·번역 범위에서 읽었으며 원전 전체나 실물을 대조하지 않았습니다. 기존 도판과 긴 번역문을 전재하지 않았습니다. SVG 네 점, 비교표 두 개, 질문과 해설은 자체 제작했으며 현대적 재구성입니다. 저술 연대의 추정 범위와 현대 정리의 조건을 구분했습니다. 자료 확인일:
- 손자와 『손자산경』 — Sun Zi J. J. O’Connor·E. F. Robertson · 세인트앤드루스대학교 MacTutor · 2003년 12월 갱신
성립 연대의 이견, 저자 정보의 한계, 책의 구성, 하권 26번의 조건·답, 70·21·15와 105를 사용하는 절차를 확인했습니다. 이 페이지에 실린 문헌 해설·번역을 읽었으며 원전 전문 열람으로 기록하지 않았습니다.
- 산경십서와 수학 교육 — The Ten Mathematical Classics J. J. O’Connor·E. F. Robertson · 세인트앤드루스대학교 MacTutor · 2003년 12월 갱신
『손자산경』이 수학 교육용 고전군에 포함된 사실과 당대의 주석·교육 맥락을 확인했습니다. 편찬·주석의 세부 완료 연도를 확정하는 자료로 사용하지 않았습니다.
- 진구소와 1247년 『수서구장』 — Qin Jiushao J. J. O’Connor·E. F. Robertson · 세인트앤드루스대학교 MacTutor · 웹 수학사 자료(갱신 연도는 이 글에서 특정하지 않음)
『수서구장』의 1247년 저술과 서로소가 아닌 나눗수까지 다룬 나머지 문제의 확장을 확인했습니다. 인물의 사생활 평가나 불확실한 전파 가설은 본문 근거로 사용하지 않았습니다.
- 중국인의 나머지 정리 — 디지털 수학함수 도서관 27.15절 미국 국립표준기술연구소(NIST) · Digital Library of Mathematical Functions · 2010~2026 온라인 참고자료
나눗수가 쌍마다 서로소일 때의 존재·곱을 주기로 한 유일성, 작은 나머지를 통한 큰 수 계산을 확인했습니다. 현대 정리의 설명이며 고대 저술의 문장으로 인용하지 않았습니다.
