2016-12-05 23:44:36 +01:00
|
|
|
|
func roman2arabic(digit) {
|
|
|
|
|
|
digit.uc.trans([
|
|
|
|
|
|
: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+',
|
|
|
|
|
|
]).split('+').map{.to_i}.sum;
|
|
|
|
|
|
}
|
2017-09-23 10:01:46 +02:00
|
|
|
|
|
2016-12-05 23:44:36 +01:00
|
|
|
|
%w(MCMXC MMVIII MDCLXVI).each { |roman_num|
|
|
|
|
|
|
say "#{roman_num}\t-> #{roman2arabic(roman_num)}";
|
|
|
|
|
|
}
|