Арабский цифровой в римский цифровой онлайн-инструмент преобразования
наАрабский цифровой в римский цифровой онлайн-инструмент преобразования:
Этот интерактивный инструмент преобразования арабских цифр в римские цифры поможет вам преобразовать арабские цифры в римские, введите арабское число, и римское число будет отображаться в окне результатов.
Римские цифры:
Римские цифры используют латинские буквы для обозначения чисел ("I" :"1", "V" :"5", "X" :"10", "L" :"50", "C" :"100", "D" :"500", "M" :"1000")
. Римская система счисления часто используется при сортировке бумаг и книг.
Как перевести арабские цифры в римские?
Шаг 1. Запомните значения, представленные латинским алфавитом в последовательности
["M": 1000, "CM": 900, "D": 500, "CD": 400, "C": 100, "XC": 90, "L": 50, "XL": 40, "X": 10, "IX": 9, "V": 5, "IV": 4, "I": 1]
.Шаг 2: Слева направо, попробуйте вычесть наибольшее значение и повторять до оставшихся 0
Пример 1: арабское число «424» преобразуется в римские цифры:
Пример 2: арабская цифра «2019» преобразуется в римские цифры:
Таблица перевода арабских цифр в римские:
Арабские цифры | Римские цифры | Арабские цифры | Римские цифры |
---|---|---|---|
1 | I | 21 | XXI |
2 | II | 22 | XXII |
3 | III | 23 | XXIII |
4 | IV | 24 | XXIV |
5 | V | 25 | XXV |
6 | VI | 26 | XXVI |
7 | VII | 27 | XXVII |
8 | VIII | 28 | XXVIII |
9 | IX | 29 | XXIX |
10 | X | 30 | XXX |
11 | XI | 31 | XXXI |
12 | XII | 32 | XXXII |
13 | XIII | 33 | XXXIII |
14 | XIV | 34 | XXXIV |
15 | XV | 35 | XXXV |
16 | XVI | 36 | XXXVI |
17 | XVII | 37 | XXXVII |
18 | XVIII | 38 | XXXVIII |
19 | XIX | 39 | XXXIX |
20 | XX | 40 | XL |
ссылка:
Википедия (римская цифровая система): https://en.wikipedia.org/wiki/Roman_numerals
Конвертация арабских цифр в Python:
def transform_number_to_roman_numeral(number): roman_value_list = [1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1] roman_char_list = ["M", "CM", "D", "CD", "C", "XC", "L", "XL", "X", "IX", "V", "IV", "I"] res = '' for i in range(len(roman_value_list)): while number >= roman_value_list[i]: number -= roman_value_list[i] res += roman_char_list[i] return res number_input = 987 roman_numeral_output = transform_number_to_roman_numeral(number_input) print('number {0} equal to:{1}'.format(number_input, roman_numeral_output)) ------------------- number 987 equal to:CMLXXXVII
Преобразование арабских чисел в римские на Java:
public class NumberConvertManager { public static String transform_number_to_roman_numeral(int number) { int[] roman_value_list = new int[]{1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1}; String[] roman_char_list = new String[]{"M", "CM", "D", "CD", "C", "XC", "L", "XL", "X", "IX", "V", "IV", "I"}; StringBuilder res = new StringBuilder(); for (int i = 0; i < roman_value_list.length; i += 1) { while (number >= roman_value_list[i]){ number -= roman_value_list[i]; res.append(roman_char_list[i]); } } return res.toString(); } public static void main(String[] args) { int number_input = 987; String roman_numeral_output = transform_number_to_roman_numeral(number_input); System.out.println("number " + number_input + " equal to:" + roman_numeral_output); } } ------------------- number 987 equal to:CMLXXXVII