From a959069338912346f6f6d3c1323a903951a2c598 Mon Sep 17 00:00:00 2001 From: collateralusr <110911796+collateralusr@users.noreply.github.com> Date: Mon, 23 Oct 2023 21:35:17 -0400 Subject: [PATCH] Create Roman number to decimal --- Roman number to decimal | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 Roman number to decimal diff --git a/Roman number to decimal b/Roman number to decimal new file mode 100644 index 00000000000..e1cf393848e --- /dev/null +++ b/Roman number to decimal @@ -0,0 +1,40 @@ + +def value(r): + if (r == 'I'): + return 1 + if (r == 'V'): + return 5 + if (r == 'X'): + return 10 + if (r == 'L'): + return 50 + if (r == 'C'): + return 100 + if (r == 'D'): + return 500 + if (r == 'M'): + return 1000 + return -1 + +def romanToDecimal(str): + res = 0 + i = 0 + + while (i < len(str)): + s1 = value(str[i]) + if (i + 1 < len(str)): + s2 = value(str[i + 1]) + if (s1 >= s2): + res = res + s1 + i = i + 1 + else: + res = res + s2 - s1 + i = i + 2 + else: + res = res + s1 + i = i + 1 + + return res + +romannumber = input("Enter the Roman Number you want to convert: ") +print("Integer form of Roman Numeral is: " + str(romanToDecimal(romannumber)))