Форум сайта python.su
По правилам Шварцмана можно представить римской записью любые натуральные числа, не превосходящие 3999.
Правила Шварцмана:
Римские целые числа записываются символами I, V, X, L, C, D и M.
Числа, написанные с уменьшением значения слева направо, суммируются (VI = 6), а с уменьшением значения справа налево вычитаются (IX = 9)
Нельзя использовать больше трех одинаковых символов подряд
Количество символов в записи числа должно быть минимальным
Для упрощения понимания будем считать, что корректная запись натурального числа римской записью по правилам Шварцмана задается регулярным выражением:
M{0,3}(CM|CD|D?C{0,3})?(XC|XL|L?X{0,3})?(IX|IV|V?I{0,3})?.
Офлайн
websearch: Roman numerals python pipy -> https://github.com/jambonrose/roman-numerals
Офлайн
https://stackoverflow.com/questions/28777219/basic-program-to-convert-integer-to-roman-numerals
Офлайн