Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.TreeMap;
- public class Convertor {
- private TreeMap<Integer, String> map;
- public Convertor() {
- map = new TreeMap<>();
- map.put(1000, "M");
- map.put(900, "CM");
- map.put(500, "D");
- map.put(400, "CD");
- map.put(100, "C");
- map.put(90, "XC");
- map.put(50, "L");
- map.put(40, "XL");
- map.put(10, "X");
- map.put(9, "IX");
- map.put(5, "V");
- map.put(4, "IV");
- map.put(1, "I");
- }
- public String arabicToRomanNumber(int number) {
- if (number <= 0 || number >= 4001) {
- throw new IllegalArgumentException("Out of range!");
- }
- int transformedNumber = 0;
- StringBuilder romanNum = new StringBuilder();
- while (number != 0) {
- transformedNumber = map.floorKey(number);
- String toBeAdded = map.get(transformedNumber);
- number -= transformedNumber;
- romanNum.append(toBeAdded);
- }
- return romanNum.toString();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement