Roman numerals: subtractive notation and where they still appear
Roman numerals (I, V, X, L, C, D, M) still show up on clock faces, in book chapter numbering, and in copyright dates. This article walks through the rules and the limits.
Symbols and values
| Symbol | Value |
|---|---|
| I | 1 |
| V | 5 |
| X | 10 |
| L | 50 |
| C | 100 |
| D | 500 |
| M | 1000 |
Seven symbols cover 1 through 3,999.
Additive and subtractive notation
The default rule: place symbols largest first and add:
III = 1 + 1 + 1 = 3
LXX = 50 + 10 + 10 = 70
MMXXIV = 1000 + 1000 + 10 + 10 + 4 = 2024 To avoid four of the same symbol in a row, subtractive notation is used. A smaller symbol placed before a larger one is subtracted:
IV = 5 - 1 = 4 (not IIII)
IX = 10 - 1 = 9 (not VIIII)
XL = 50 - 10 = 40
XC = 100 - 10 = 90
CD = 500 - 100 = 400
CM = 1000 - 100 = 900 Subtractive pairs are restricted to:
IbeforeVandXXbeforeLandCCbeforeDandM
IL (49) and IC (99) are not standard; use XLIX and XCIX.
The 3999 ceiling
Standard Roman numerals top out at 3,999 (MMMCMXCIX) because:
- You don’t write four
Ms in a row. - There’s no symbol larger than
Min the standard set.
Classical extensions used overlines or other notations for larger numbers, but modern usage stops at 3,999.
Year examples
| Year | Roman |
|---|---|
| 2000 | MM |
| 2024 | MMXXIV |
| 1999 | MCMXCIX |
| 1492 | MCDXCII |
| 1066 | MLXVI |
Movie and TV credits often show ”© MCMXCIX” (1999).
Zero and negatives
There is no symbol for zero. Medieval scribes adopted “N” (nullus, “nothing”) informally. Negative numbers cannot be expressed at all — both reflect ancient Roman math’s limits.
Fractions
Ancient Romans used base-12 fractions:
- S = 1/2
- · = 1/12 (uncia)
- e.g.
VS = 5 + 1/2 = 5.5
Rarely used today, but you’ll see them on coins and historical texts.
Clocks: IIII vs IV
Many clock faces write “4” as IIII rather than IV. Reasons given:
- Visual symmetry (IIII pairs nicely with VIII opposite).
- A 14th-century convention.
- Avoidance of
IVas a deity-name abbreviation (one of several historical theories).
Big Ben is a famous exception that uses IV.
Algorithm: decimal → Roman
Greedy “subtract the largest fitting value” algorithm with subtractive pairs pre-registered:
function toRoman(num) {
const map = [
[1000, 'M'],
[900, 'CM'],
[500, 'D'],
[400, 'CD'],
[100, 'C'],
[90, 'XC'],
[50, 'L'],
[40, 'XL'],
[10, 'X'],
[9, 'IX'],
[5, 'V'],
[4, 'IV'],
[1, 'I']
];
let result = '';
for (const [value, symbol] of map) {
while (num >= value) {
result += symbol;
num -= value;
}
}
return result;
} Roman → decimal
Read left to right; if the current symbol is smaller than the next, subtract it:
function fromRoman(s) {
const map = { I: 1, V: 5, X: 10, L: 50, C: 100, D: 500, M: 1000 };
let total = 0;
for (let i = 0; i < s.length; i++) {
const cur = map[s[i]];
const next = map[s[i + 1]] ?? 0;
if (cur < next) total -= cur;
else total += cur;
}
return total;
} Where they still appear
- Clock faces — tradition.
- Book front matter — preface page numbers (i, ii, iii, …).
- Movie/TV credits — copyright years.
- Monarchs and popes — Elizabeth II, Francis I.
- Chemistry — oxidation states (iron(III), etc.).
- Olympic games — “Games of the XXXIII Olympiad”.
Summary
- Seven symbols (I, V, X, L, C, D, M) span 1 to 3,999.
- Additive notation by default; specific pairs use subtractive.
- No zero, no negatives.
- The clock
IIIIis a long-standing exception. - Still used in narrow but visible contexts.
To convert between decimal and Roman, the Roman numeral tool on this site does both directions.