Skip to content

Instantly share code, notes, and snippets.

@AndrewGuard
Last active December 31, 2015 23:49
Show Gist options
  • Select an option

  • Save AndrewGuard/8062208 to your computer and use it in GitHub Desktop.

Select an option

Save AndrewGuard/8062208 to your computer and use it in GitHub Desktop.
def to_roman(num)
roman_numerals = {
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"
}
roman_number = ""
roman_numerals.each do |arabic, roman|
factor = num / arabic
roman_number << roman * factor
num -= arabic * factor
end
roman_number
end
puts "My totally sweet testing script"
puts ""
puts "input | expected | actual"
puts "------|----------|-------"
puts "4 | IV | #{to_roman(4)}"
puts "9 | IX | #{to_roman(9)}"
puts "13 | XIII | #{to_roman(13)}"
puts "1453 | MCDLIII | #{to_roman(1453)}"
puts "1646 | MDCXLVI | #{to_roman(1646)}"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment