로마 숫자 변환기 사용 방법
- 일반 정수가 있으면 정수 → 로마 숫자를, 로마 숫자를 해독하려면 로마 숫자 → 정수를 선택하세요.
- 값을 입력하세요. 정수는 1~3999여야 합니다. 로마 숫자는 대소문자 모두 가능하지만 I, V, X, L, C, D, M의 일곱 기호만 사용해야 합니다.
- 변환을 선택하면 결과 카드에 변환값과 표준 로마 표기가 표시됩니다. 다른 문서에 결과만 넣으려면 결과 복사를 사용하세요.
- 입력이 거부되면 값을 그대로 확인하며 안내된 문제를 수정하세요. 비표준 숫자를 임의로 재해석하지 않습니다.
표준 로마 숫자의 원리
로마 숫자는 일곱 기호를 사용합니다. I는 1, V는 5, X는 10, L은 50, C는 100, D는 500, M은 1000입니다. 대부분 큰 기호부터 작은 기호 순으로 적고 더합니다. 예를 들어 VIII는 5 + 1 + 1 + 1, MD는 1000 + 500입니다.
현대 표준 표기는 기호가 네 번 반복되지 않도록 여섯 감산 쌍을 사용합니다. IV는 4, IX는 9, XL은 40, XC는 90, CD는 400, CM은 900입니다. 작은 기호를 빼는 것은 이 쌍에서만 허용합니다. 따라서 49는 IL이 아닌 XLIX이고 99는 IC가 아닌 XCIX입니다.
정수를 로마 숫자로 바꿀 때는 M부터 시작하여 CM 같은 감산 기호를 포함한 가장 큰 표준 기호를 차례로 사용합니다. 로마 숫자를 정수로 바꿀 때는 먼저 값을 읽고 그 정수를 다시 표준 표기로 바꿉니다. 원래 표기와 일치할 때만 허용하므로 추측 없이 잘못된 반복, 순서, 감산을 검출합니다.
윗줄이나 확장 기호 없이 일반 문자만 사용하므로 범위는 3999까지입니다. 이 체계에서 3999는 MMMCMXCIX입니다. 로마 숫자에는 표준 자릿값 체계의 0이 없으므로 0, 음수, 소수, 분수는 지원하지 않습니다.
풀이 예시
1994 → MCMXCIV
1994를 1000 + 900 + 90 + 4로 나누면 M + CM + XC + IV이므로 표준 결과는 MCMXCIV입니다. 다시 정수로 바꾸면 1994입니다.
49 → XLIX
40은 XL, 9는 IX이며 두 자릿값 묶음을 이으면 XLIX입니다. IL이 짧아 보여도 표준 표기에서 I를 L에서 뺄 수 없으므로 거부합니다.
제한 및 흔한 오류
- 1~3999의 정수만 지원합니다. 0은 없으며 4000 이상의 윗줄 확장 표기도 지원하지 않습니다.
- 현대 표준형만 허용합니다. 역사적 비문, 시계의 IIII, 중세 변형, Ⅻ 같은 단일 유니코드 문자는 정규화하지 않습니다.
- I, X, C, M은 일반 위치에서 최대 세 번 반복할 수 있으며 V, L, D는 반복하지 않습니다. IIII, VV, MCMC 같은 표기는 거부합니다.
- ASCII 소문자는 대문자로 바꿉니다. 기호 사이 공백, 문장부호, 구분자가 있는 날짜, 완전한 문장은 해석하지 않습니다.
- 한 번에 값 하나를 변환합니다. 개요 번호, 군주 이름, 저작권 연도, 산술식을 자동 해석하지 않습니다.
자주 묻는 질문
4를 IIII가 아닌 IV로 표시하는 이유는 무엇인가요?
IV는 이 변환기가 사용하는 표준 감산형입니다. 일부 시계는 관습적으로 IIII를 사용하지만 엄격한 현대 표기에는 포함되지 않습니다.
지원하는 가장 큰 로마 숫자는 무엇인가요?
3999인 MMMCMXCIX입니다. 더 큰 수에는 윗줄 같은 추가 규약이 필요하므로 여기서는 제외합니다.
소문자를 입력할 수 있나요?
네. mcmxciv 같은 입력은 검증 전에 MCMXCIV로 바뀌고 1994로 변환됩니다.
99에 IC를 쓰면 왜 거부되나요?
I는 V나 X 앞에서만 뺄 수 있습니다. 99는 자릿값에 따라 90인 XC와 9인 IX를 이어 XCIX로 적습니다.
입력값을 다른 곳으로 보내나요?
아니요. 변환과 검증은 브라우저 탭에서 이루어지며 입력값을 분석 이벤트에 넣지 않습니다.