로마 숫자에서 아랍어 디지털 온라인 변환 도구

로마 숫자

아라비아 숫자

정보로마 숫자에서 아랍어 디지털 온라인 변환 도구:

이 온라인 로마 숫자와 아라비아 숫자 변환 도구를 사용하면 로마 숫자를 아라비아 숫자로 변환 할 수 있습니다. 로마 숫자를 입력하면 아랍어 숫자가 결과 상자에 표시됩니다.

로마 숫자:

로마 숫자는 라틴 문자를 사용하여 숫자를 나타냅니다 ("I" :"1", "V" :"5", "X" :"10", "L" :"50", "C" :"100", "D" :"500", "M" :"1000") . ("I" :"1", "V" :"5", "X" :"10", "L" :"50", "C" :"100", "D" :"500", "M" :"1000") 로마 숫자 체계는 종종 논문과 책의 분류에 사용됩니다.

comic roman numerals to numbers

로마 숫자를 아라비아 숫자로 변환하는 방법은 무엇입니까?

  1. 1 단계 : 라틴 알파벳으로 표시된 값을 ('I': 1, 'V': 5, 'X': 10, 'L': 50, 'C': 100, 'D': 500, 'M': 1000) .

  2. 2 단계 : 왼쪽에서 오른쪽으로 라틴 알파벳이 라틴 알파벳보다 앞에 나오면 라틴 알파벳으로 표시된 값을 뺍니다.

    실시 예 2.1 : IV = V-1 = 5-1 = 4

    Example 2.2 : XL = X - L = 50 - 10 = 40

  3. 3 단계 : 다른 경우에는이 라틴 문자가 나타내는 값을 증가시킵니다.

    Example 3.1 : XXXV = X + X + X + V = 10 + 10 + 10 + 5 = 35

    예제 3.2 : CXXIII = C + X + X + I + I + I = 100 + 10 + 10 + 1 + 1 + 1 = 123

예제 1 : 로마 숫자 "CXLVI"를 아라비아 숫자로 변환 :

CXLVI = C + XL + V + I = 100 + (500-10) + 5 + 1 = 146

예제 2 : 로마 숫자 "CDXCIV"를 아라비아 숫자로 변환 :

CDXCIV = CD + XC + IV = (500-100) + (100-10) + (5-1) = 494

로마 숫자와 아라비아 숫자 변환 표:

로마 숫자 아라비아 숫자 로마 숫자 아라비아 숫자
I 1 XXI 21
II 2 XXII 22
III 3 XXIII 23
IV 4 XXIV 24
V 5 XXV 25
VI 6 XXVI 26
VII 7 XXVII 27
VIII 8 XXVIII 28
IX 9 XXIX 29
X 10 XXX 30
XI 11 XXXI 31
XII 12 XXXII 32
XIII 13 XXXIII 33
XIV 14 XXXIV 34
XV 15 XXXV 35
XVI 16 XXXVI 36
XVII 17 XXXVII 37
XVIII 18 XXXVIII 38
XIX 19 XXXIX 39
XX 20 XL 40

링크:

위키 백과 (로마 디지털 시스템): https://en.wikipedia.org/wiki/Roman_numerals

로마 숫자와 파이썬의 아라비아 숫자 변환:

def transform_roman_numeral_to_number(roman_numeral):
    roman_char_dict = {'I': 1, 'V': 5, 'X': 10, 'L': 50, 'C': 100, 'D': 500, 'M': 1000}
    res = 0
    for i in range(0, len(roman_numeral)):
        if i == 0 or roman_char_dict[roman_numeral[i]] <= roman_char_dict[roman_numeral[i - 1]]:
            res += roman_char_dict[roman_numeral[i]]
        else:
            res += roman_char_dict[roman_numeral[i]] - 2 * roman_char_dict[roman_numeral[i - 1]]
    return res


roman_numeral_input = 'MMXVIII'
number_output = transform_roman_numeral_to_number(roman_numeral_input)
print('Roman numeral {0} equal to:{1}'.format(roman_numeral_input, number_output))

-------------------
Roman numeral MMXVIII equal to:2018

로마 숫자와 자바의 아라비아 숫자 변환:

import java.util.Map;
import java.util.HashMap;

public class NumberConvertManager {
    public static int transform_roman_numeral_to_number(String roman_numeral) {
        Map<Character, Integer> roman_char_dict = new HashMap<Character, Integer>();
        roman_char_dict.put('I', 1);
        roman_char_dict.put('V', 5);
        roman_char_dict.put('X', 10);
        roman_char_dict.put('L', 50);
        roman_char_dict.put('C', 100);
        roman_char_dict.put('D', 500);
        roman_char_dict.put('M', 1000);
        int res = 0;
        for (int i = 0; i < roman_numeral.length(); i += 1) {
            if (i == 0 || roman_char_dict.get(roman_numeral.charAt(i)) <= roman_char_dict.get(roman_numeral.charAt(i - 1)))
                res += roman_char_dict.get(roman_numeral.charAt(i));
            else
                res += roman_char_dict.get(roman_numeral.charAt(i)) - 2 * roman_char_dict.get(roman_numeral.charAt(i - 1));
        }
        return res;
    }

    public static void main(String[] args) {
        String roman_numeral_input = "MMXVIII";
        int number_output = transform_roman_numeral_to_number(roman_numeral_input);
        System.out.println("Roman numeral " + roman_numeral_input + " equal to:" + number_output);
    }
}

-------------------
Roman numeral MMXVIII equal to:2018