Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- val romanLetters = List("I","V","X","L","C","D","M")
- def romanDigit(x:Int, pos:Int):String = {
- if(x <= 3) romanLetters(pos) * x else
- if(x == 4) romanLetters(pos) + romanLetters(pos + 1) else
- if(x == 9) romanLetters(pos) + romanLetters(pos + 2) else
- romanLetters(pos + 1) + romanDigit(x-5, pos)
- }
- def romanNumberRec(x:Int, pos:Int, mode:Int):String = {
- if(x == 0) "" else
- romanDigit(x / mode, pos) + romanNumberRec(x % mode, pos - 2, mode / 10)
- }
- def romanNumber(x:Int) = romanNumberRec(x, 6, 1000)
Advertisement
Add Comment
Please, Sign In to add comment