-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathTask4.java
More file actions
25 lines (20 loc) · 793 Bytes
/
Task4.java
File metadata and controls
25 lines (20 loc) · 793 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
package edu.hw3;
public class Task4 {
private Task4() {}
private final static String[] ROMAN_NUMBERS =
{"M", "CM", "D", "CD", "C", "XC", "L", "XL", "X", "IX", "V", "IV", "I"};
private final static int[] DECIMAL_NUMBERS = {1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1};
public static String convertToRoman(int number) {
var answer = new StringBuilder();
int remaining = number;
for (int i = 0; i < ROMAN_NUMBERS.length; i++) {
int decimalNumber = DECIMAL_NUMBERS[i];
String romanNumber = ROMAN_NUMBERS[i];
while (remaining >= decimalNumber) {
answer.append(romanNumber);
remaining -= decimalNumber;
}
}
return answer.toString();
}
}