Предмет: Информатика, автор: doktornevazhno

PYYYYYYYYYYTHOOOOOOOOOON
Напишите функцию, которая заменяет во всей строке все римские числа на соответствующие десятичные числа.
Пример:
Введите строку:
В MMXIII году в школе CXXIII состоялся очередной выпуск XI классов.
Результат:
В 2013 году в школе 123 состоялся очередной выпуск 11 классов.

Ответы

Автор ответа: bilanovfatim
1

Ответ:

s = input()

lst = s.split(' ')

rim = ['I', 'V', 'X', 'L', 'C', 'D', 'M']

v = {'I': 1, 'V' : 5, 'X' : 10, 'L' : 50, 'C' : 100, 'D' : 500, 'M' : 1000}

for i in range(len(lst)):

 if (rim[0] in lst[i]) or (rim[1] in lst[i]) or (rim[2] in lst[i]) or (rim[3] in lst[i]) or (rim[4] in lst[i]) or (rim[5] in lst[i]) or (rim[6] in lst[i]):

   num = 0

   for j in lst[i]:

     num += v[j]

   lst[i] = str(num)

print(*lst)


doktornevazhno: Спасибо!
Похожие вопросы
Предмет: Окружающий мир, автор: ДимДимычАл
Предмет: Окружающий мир, автор: vladdixx
Предмет: Музыка, автор: katyakyzmina