package io.tswf.dima; import java.util.Scanner; public class CalculatorApp { public static final String OPERATION_PLUS = "+"; public static final String OPERATION_MINUS = "-"; public static final String OPERATION_MULTIPLY = "*"; public static final String OPERATION_DIVISION = ":"; public static final String OPERATION_POWER = "^"; public static final String[] AVAILABLE_OPERATIONS = { OPERATION_DIVISION, OPERATION_MINUS, OPERATION_PLUS, OPERATION_MULTIPLY, OPERATION_POWER }; public static final Scanner SCANNER = new Scanner(System.in); // Проверяет поддерживается ли операция public static boolean isOperationSupported(String operationDigit) { for (String supportedOperationDigit : AVAILABLE_OPERATIONS) { if (supportedOperationDigit.equals(operationDigit)) { return true; } } return false; } public static void printInputNameText(String inputName) { System.out.print("Введите " + inputName + " >>> "); } public static float readNumberFromConsole(String numberName) { printInputNameText(numberName); return SCANNER.nextFloat(); } public static String readStringFromConsole(String stringName) { printInputNameText(stringName); return SCANNER.next(); } public static void main(String[] args) { float number1 = readNumberFromConsole("первое число"); String operation = readStringFromConsole("операцию"); float number2 = readNumberFromConsole("второе число"); System.out.print("Ответ: "); if(!isOperationSupported(operation)) { System.out.println("Неизвестная операция!"); return; } if (OPERATION_DIVISION.equals(operation)) { if (number2 != 0) { float division = number1 / number2; System.out.println(division); } else { System.out.println("На 0 делить нельзя"); } } if (OPERATION_PLUS.equals(operation)) { float addition = number1 + number2; System.out.println(addition); } if (OPERATION_MINUS.equals(operation)) { float subtraction = number1 - number2; System.out.println(subtraction); } if (OPERATION_MULTIPLY.equals(operation)) { float multiplication = number1 * number2; System.out.println(multiplication); } if (OPERATION_POWER.equals(operation)) { double power = Math.pow(number1, number2); System.out.println(power); } } }