Conversor de Números Romanos
Convierte un número en número romano, o un número romano de vuelta a un número. Funciona en ambos sentidos, se actualiza mientras escribes, y nada de lo que ingreses sale de tu navegador.
Símbolos de los números romanos
| I | V | X | L | C | D | M |
|---|---|---|---|---|---|---|
| 1 | 5 | 10 | 50 | 100 | 500 | 1000 |
La notación estándar también usa seis pares sustractivos de dos letras para evitar repetir un símbolo cuatro veces seguidas: CM (900), CD (400), XC (90), XL (40), IX (9) y IV (4) — un símbolo de menor valor colocado antes de uno mayor significa "resta", que es cómo el 4 se convierte en IV en vez del no estándar IIII.
Ejemplos prácticos
1994 se descompone como 1000 + 900 + 90 + 4, así que el algoritmo voraz añade M (1000), CM (900), XC (90) y IV (4) en ese orden, dando MCMXCIV. El valor estándar más grande, 3999, es MMMCMXCIX — tres emes (3000), luego CM (900), XC (90) e IX (9). Y uno pequeño, 58, es 50 + 5 + 1 + 1 + 1, dando LVIII.
Preguntas frecuentes
¿Por qué el rango válido es de 1 a 3999?
Los números romanos clásicos no tienen símbolo para el cero — el sistema romano es anterior al concepto del cero como número — y tampoco existe forma de escribir un valor negativo. El límite superior, 3999 (MMMCMXCIX), es el número más grande que la notación sustractiva estándar puede representar con los siete símbolos habituales; para ir más alto hacían falta marcas especiales como el vínculo (una raya superior que multiplicaba el valor de un símbolo por 1000) o el apóstrofo, ambas notaciones históricas distintas que esta herramienta no intenta reproducir. Por eso 1–3999 es el rango honesto para la notación que implementa esta herramienta.
¿Por qué se rechaza "IIII" o "VV" en vez de convertirse?
Esta herramienta valida que la entrada de Romano → Número sea notación canónica bien formada antes de convertirla, y rechaza formas como IIII (debería ser IV), VV (debería ser X) o IIX (debería ser VIII) en lugar de adivinar qué quisiste decir. Es una decisión deliberada, no la única válida: una herramienta más permisiva podría sumar los valores de los símbolos de izquierda a derecha y aceptar esas formas en silencio — obtendrías una respuesta, pero no necesariamente la que buscabas, y los errores de tecleo pasarían disfrazados de números "válidos". Preferimos avisarte con claridad de que la entrada no coincide con la notación estándar antes que arriesgarnos a una interpretación silenciosa incorrecta. (Es posible que veas IIII en algunas esferas de reloj — es una convención estilística real pero no estándar, distinta de la notación que valida esta herramienta.)
¿Cómo construye el numeral el algoritmo Número → Romano?
Es un algoritmo voraz: partiendo del valor más grande, 1000 (M), resta ese valor y añade el símbolo correspondiente repetidamente mientras el número restante siga siendo suficientemente grande, y luego pasa al siguiente valor en una lista ordenada que incluye los seis pares sustractivos — 900 (CM), 500 (D), 400 (CD), 100 (C), 90 (XC), 50 (L), 40 (XL), 10 (X), 9 (IX), 5 (V), 4 (IV) — hasta llegar a 1. Como la lista está ordenada de mayor a menor e incluye esos pares sustractivos como entradas propias, el enfoque voraz siempre produce el numeral estándar y canónico, nunca uno equivalente pero no estándar.
¿Por qué se rellena la otra caja al cambiar de dirección?
Al cambiar de Número → Romano a Romano → Número (o viceversa), la herramienta traslada tu último resultado válido a la nueva caja de entrada, para que puedas verificar de inmediato el resultado en ambos sentidos — convierte 1994 a MCMXCIV, cambia de dirección y comprueba que MCMXCIV vuelve a dar 1994. Solo traslada un resultado válido, nunca texto inválido o a medio escribir, así que nunca te sorprende con algo que no escribiste o convertiste tú mismo.