|
Помню есть поэт Гомер, помню U=IR Это круто мне по жизни пригодилось! Профессор Лебединский РИМСКИЕ ЦИФРЫ И ЧИСЛА
Практически ненужный модуль умеет переводить римские числа в десятичные и обратно. По жизни, римские цифры применяются на часовых циферблатах, в книгах (для нумерации приложений и вступлений) и для указания копирайтных годов "с понтами", например так:
© MCMXCIX MMIX. All rights reserved.
т.е. по принципу "хрен поймешь". Особо красиво выглядят года до 1999 (MCMXCIX), а затем идут 2000,2002,2003,2004... (MM,MMI,MMII,MMIII,MMIV), что совсем уже неинтересно (просто компьютерные фичи типа четвертых пней беспонтовые какие-то).
Модуль может быть вызван разработчиком (доступ через функцию) или в файле контента:
- С одним параметром - преобразует десятичное или римское число в его противоположный эквивалент (сам определяет, что задано).
- Два параметра - то же самое, но между числами выводится задаваемый в настройках разделитель.
- Три параметра и более - первый выводится в начале, второй и третий - числа, как в предыдущем случае, остальные - выводятся после (как в примере - смотрите файл контента, где глазик).
- В числах звездочка * вместо оного обозначает текущий год. Если получается, что два числа одинаковые - второе не выводится.
Для справки
Римская цифра | I | V | X | L | C | D | M | Десятичное число | 1 | 5 | 10 | 50 | 100 | 500 | 1000 |
|
Правила построения римских чисел "интуитивно понятны", как любят говорить разработчики интерфейсов к программному, извините, обеспЕчению. Если младшая цифра стоит перед старшей, то она из нее вычитается, но при этом младшая может быть только одна и применяется только для избежания четырехкратного повтора. Например, VIIII - неправильно (правильно - IX), LC=50 - неправильно (правильно - L), IM=999 - неправильно (правильно - CMXCIX), ну и так далее... Есть еще и дополнительное правило - черта сверху предлагает умножить эту цифру на 1000.
Вот почему сия арифметика и не прижилась - слишком уж римские товарисчи суровы.
|
|