Всем привет! Есть задание: написать калькулятор
Код:
import java.util.Scanner;
public class MainClass {
public static void main(String[] args) {
int value1 = 0;
int value2 = 0;
String operation = null;
System.out.println("Введите 2 целых числа: ");
Scanner scanner = new Scanner(System.in);
if (value1 > 0 || value1 < 10) {
value1 = scanner.nextInt();
operation = scanner.next();
value2 = scanner.nextInt();
}
if (operation.equals("+")) {
System.out.println(value1 + value2);
}
if (operation.equals("-")) {
System.out.println(value1 - value2);
}
if (operation.equals("*")) {
System.out.println(value1 * value2);
}
if (operation.equals("/")) {
System.out.println(value1 / value2);
} else {
System.out.println("error!");
}
}
}
Вопрос: как тоже самое сделать с римскими числами?
Сделайте для себя собственный словарь
string [] arab = new string[10]{"10","1","2","3","4","5","6","7","8","9"};
string [] rome = new string[10]{"X","I","II","III","IV","V","VI","VII","VIII","IX"};
и соответственно менять по индексу, сперва определив нужный вам цифру.
Можете использовать перечисление и определить в нём нужные вам методы конвертации
enum RomanNumeral {
I("I", 1), IV("IV", 4);...и т.д.
private int value;
private String key;
RomanNumeral(String key, int value) {
this.value = value;
}
public int getValue() {
return value;
public String getKey() {
return key;
}
static int toInt(String key) {
for (RomanNumeral i: this.values())
if (i.getKey.equals(key))
return i.getValue();
return "";
}
}
Вам потребуется два дополнительных метода: один будет переводить любое арабское число в римское, а другой - любое римское в арабское.
К примеру, вам пришли строки "IV"
и "X"
. Сначала, вы переводите каждую в арабское число, потом производите с ними математическую операцию так же, как и делаете сейчас, а затем результат конвертируете обратно в римскую систему.
Примеров логики конвертации множество, например, вот этот.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Стоит задача парсить нескдесятков сайтов, большая часть селекторов которых идентична
Сервер принимает запрос (скажем до 100) одновременно и либо отсылает изображение / список изображений клиенту (андроид), либо генерирует его...
Интересует вопрос, как можно реализовать вывод конкретных данных с объекта через JavaScript Vanilla? Есть ли какие-либо способы парсинга данных значений?...