숫자 → 한글 금액 변환기 (일금 · 원정)
숫자를 한글·갖은자 금액 표기로, 계약서 형식까지
쉼표·소수점·음수 가능. 예: 1,234,567
12,345
한글
일금 일만 이천삼백사십오원정
갖은자 (한자 정자체)
金 壹萬貳仟參佰肆拾伍 元整
문제는 콤마가 세 자리, 우리는 네 자리라는 것
1000000000 을 소리 내어 읽어 보세요. 막히는 지점이 있다면, 그건 당신 탓이 아니라 콤마와 한국어 단위의 주기가 어긋나기 때문입니다.
콤마는 서양식입니다. 세 자리마다 찍혀서 thousand(1,000) → million(1,000,000) → billion(1,000,000,000)으로 딱딱 맞습니다. 그런데 한국어(그리고 중국·일본어)의 수 단위는 네 자리마다 바뀝니다 — 만(1,0000) → 억(1,0000,0000) → 조(1,0000,0000,0000). 세 자리 리듬으로 찍힌 콤마를 네 자리 단위로 읽으려니, 머릿속에서 자리를 다시 끊어야 하고 그 과정에서 한 자리씩 밀립니다.
콤마 기준 (3자리) 한국어 기준 (4자리)
1,000,000 100,0000 = 백만
10,000,000 1000,0000 = 천만
100,000,000 1,0000,0000 = 일억그래서 100,000이 “십만”인지 “백천”인지 순간 헷갈립니다 (정답은 십만 — 한국어에 ‘백천’이라는 자리는 없습니다). 위 변환기는 이 어긋남을 대신 계산해, 아무리 긴 숫자라도 만·억·조로 끊어 읽어 줍니다. 자리 감을 잡는 요령 하나: 콤마가 하나면 만, 둘이면 억, 셋이면 조 근처입니다.
왜 굳이 한글로 쓰나: 숫자는 고치기 너무 쉽다
계약서·영수증·수표를 보면 금액을 숫자와 한글로 두 번 적습니다. 번거로워 보이지만 이유가 분명합니다 — 아라비아 숫자는 위조가 너무 쉽습니다.
1에 획을 하나 그으면7이 됩니다.0은8이나9로,3은8로 고칠 수 있습니다.- 콤마 위치만 옮겨도
100,000이1,000,000이 됩니다.
반면 ‘일십만원’을 ‘일백만원’으로 바꾸려면 글자를 통째로 지우고 다시 써야 하고, 그러면 흔적이 남습니다. 숫자와 한글을 나란히 두면 둘이 서로를 검증합니다 — 한쪽만 고쳐진 문서는 그 자리에서 들통납니다. 금액이 클수록 이 이중 표기의 값이 커집니다.
‘일금 … 원정’과 십·백·천의 1
금액 표기에는 앞뒤를 닫는 관례가 있습니다. 앞의 ‘일금(一金)’은 ‘이 금액은’이라는 표시이고, 뒤의 ‘원정(元整)’의 ‘정’은 ‘정확히 이 금액이며 끝수가 없다’는 뜻입니다. 금액 뒤에 몰래 숫자를 덧붙이지 못하게 마무리를 못박는 장치입니다.
같은 이유로, 계약서에서는 일상과 달리 십·백·천 앞의 1도 적습니다. 우리는 보통 1500 을 ‘천오백’이라 읽지만(1 생략), 금액 표기에서는 ‘일천오백’이라 적습니다 — 생략된 자리에 나중에 숫자를 끼워 넣을 틈을 주지 않기 위해서입니다. 이 변환기의 두 모드가 정확히 이 차이입니다:
- 일반 읽기 —
1500→ ‘천오백’. 일상 표기. - 계약서 표기 —
1500→ ‘일금 일천오백원정’. 1을 모두 적고 앞뒤를 닫습니다.
갖은자: 한자마저 위조가 걱정될 때
더 엄격한 문서(어음·등기·재무제표)는 한글도 모자라 갖은자를 씁니다. 한자 一·二·三 은 획이 단순해서 二 에 한 획을 더하면 三 이 되는 식으로 여전히 위조가 가능합니다. 그래서 획이 복잡해 덧그을 수 없는 정자체를 따로 마련했습니다 — 壹(일)·貳(이)·參(삼)·拾(십)·佰(백)·仟(천)·萬(만). 이걸 갖은자 또는 대사자(大寫字)라 합니다. 위 변환기는 한글 표기와 함께 이 갖은자 표기도 나란히 보여 주므로, 증서에 그대로 옮겨 적을 수 있습니다.
큰 금액과 정밀도
마지막으로, 조 단위를 다룰 때의 함정 하나. 스프레드시트나 계산기에 아주 큰 숫자를 넣으면 끝자리가 조용히 0 으로 바뀌는 일이 있습니다. 자바스크립트를 포함한 많은 환경이 숫자를 64비트 부동소수점으로 다루는데, 그 정확한 한계가 약 900조(9,007,199,254,740,993) 부근이기 때문입니다. 부동산 거래나 기업 회계에서는 이 범위를 넘는 금액이 드물지 않고, 그 순간 끝자리 오차는 그대로 금액 오류가 됩니다. 이 변환기는 BigInt로 계산해 그 벽 너머에서도 자리 하나 틀리지 않습니다 — 같은 ‘253 의 벽’ 이야기는 진법 변환기에서 더 자세히 다룹니다. 금액을 다루는 도구라면 마땅히 넘어야 하는 선입니다.
자주 묻는 질문
- 왜 계약서·영수증에 금액을 한글로 쓰나요?
- 위조·변조를 막기 위해서입니다. 아라비아 숫자는 획 하나로 값이 바뀝니다 — 1에 획을 그으면 7이 되고, 0은 8이나 9로, 3은 8로 고칠 수 있습니다. 콤마 위치만 옮겨도 100,000이 1,000,000이 됩니다. 반면 '일십만원'을 '일백만원'으로 고치려면 글자를 통째로 바꿔야 해서 흔적이 남습니다. 그래서 금액이 중요한 문서는 숫자와 한글(또는 갖은자)을 함께 적어, 둘이 맞물려 서로를 검증하게 합니다.
- '일금'과 '원정'은 무슨 뜻인가요?
- '일금(一金)'은 '이 금액은'이라는 뜻으로 금액 표기의 시작을 알립니다. '원정(元整)' 또는 '원정(圓整)'의 '정'은 '정확히 이 금액이며 그 아래 끝수가 없다'는 뜻으로, 금액 뒤에 몰래 숫자를 덧붙이지 못하게 마무리를 못박는 장치입니다. 그래서 계약서의 금액은 '일금 삼천오백만원정'처럼 앞뒤가 닫힌 형태로 적습니다. 이 변환기의 '계약서 표기' 모드가 이 앞뒤 장치를 붙여 줍니다.
- 갖은자(壹貳參)가 무엇인가요?
- 한자 숫자의 '정자체'입니다. 一·二·三은 획이 단순해서 二에 획을 더하면 三이 되는 식으로 위조가 쉽습니다. 그래서 증서·어음·등기처럼 위조를 특히 경계하는 문서에서는 壹(일)·貳(이)·參(삼)·拾(십)·佰(백)·仟(천)·萬(만)처럼 획이 복잡해 덧그을 수 없는 글자를 씁니다. 이걸 갖은자 또는 대사자(大寫字)라고 합니다. 이 변환기는 한글 표기와 함께 갖은자 표기도 보여 줍니다.
- 100,000을 왜 한눈에 못 읽나요?
- 콤마와 한국어 단위의 주기가 어긋나기 때문입니다. 콤마는 서양식이라 세 자리마다(1,000 = thousand) 찍히는데, 한국어는 네 자리마다(1,0000 = 만) 단위가 바뀝니다. 그래서 100,000을 콤마 기준으로 읽으면 '백…천?'에서 막히고, 실제로는 10,0000으로 다시 끊어야 '십만'이 됩니다. 이 3과 4의 어긋남이 큰 금액을 헷갈리게 만드는 근본 원인이고, 이 변환기가 있는 이유입니다. 팁: 콤마가 하나면 만, 둘이면 억, 셋이면 조 근처라고 기억하면 자리 감을 잡기 쉽습니다.
- '십'을 '일십'으로 써도 되나요?
- 됩니다. 오히려 금액 표기에서는 그게 더 안전합니다. 일상 한국어는 '천오백'처럼 십·백·천 앞의 1을 생략하지만, 계약서에서는 '일천오백'처럼 1을 적어 빈틈을 없앱니다 — 생략된 자리에 나중에 숫자를 끼워 넣지 못하게 하기 위해서입니다. 이 변환기의 '계약서 표기' 모드가 이 방식(십·백·천 앞의 1을 모두 표기)을 쓰고, '일반 읽기' 모드는 일상 표기(생략)를 씁니다. 두 표기 모두 틀린 게 아니라 목적이 다릅니다.
- 조 단위의 큰 금액도 정확한가요?
- 네. 이 변환기는 자바스크립트의 BigInt로 계산해서 자릿수 제한이 없습니다. 보통의 자바스크립트 숫자는 9,007,199,254,740,993(약 900조) 부근부터 끝자리를 조용히 바꿔 버리는데, 부동산·기업 회계처럼 조 단위를 다루는 문서에서 이 오차는 그대로 금액 오류가 됩니다. 엑셀에 큰 숫자를 넣었더니 끝자리가 0으로 바뀌더라는 경험이 있다면 같은 벽에 부딪힌 것입니다.