清华大佬耗费三个月吐血整理的几百G的资源,免费分享!....>>>
# Hash holding the roman values
# Values above 3999 are not accepted, as numerals with bars are required.
roman_map = Hash[ 1000 => "M", 900 => "CM", 500 => "D", 400 => "CD", 100 => "C", 90 => "XC", 50 => "L", 40 => "XL", 10 => "X", 9 => "IX", 5 => "V", 4 => "IV", 1 => "I"]
print "Enter number> "
arabic = gets.chomp.to_i
if arabic < 4000
# Sort the keys, highest value (1000) first, then descending,
# and parse values
roman_map.keys.sort{ |a,b| b <=> a }.each do
|n|
# get roman numeral until the arabic number is too small,
# in which case we'll try the smaller roman values
while arabic >= n
arabic = arabic-n
print roman_map[n]
end
end
else
puts "Please enter number lower than 3999."
end