Task 20 — Калькулятор (ООП)

ООП-реализация калькулятора с обработкой исключений.

Редактировать источник

Задание

ООП-реализация калькулятора с обработкой исключений. Документация собрана по исходному коду этой практики.

Решение

Полный код решения по этой практике:

Исходные файлы решения

  • Task20/calculator.java

Task20/calculator.java

Task20/calculator.java
package Task20;

import java.util.Scanner;
import java.util.Stack;

public class calculator {
    public static void main(String[] args) throws Exception {
        Stack<Double> stack = new Stack<>();
        System.out.println("Введите число в RPN:");
        Scanner sc = new Scanner(System.in);
        String str = sc.nextLine();
        String[] elem = str.split(" ");
        for(int i =0;i< elem.length;i++){
            Double a = 0.0;
            Double b = 0.0;
            switch (elem[i]){
                case "+":
                    a = stack.pop();
                    b = stack.pop();
                    stack.push(b+a);
                    break;
                case "-":
                    a = stack.pop();
                    b = stack.pop();
                    stack.push(b-a);
                    break;
                case "*":
                    a = stack.pop();
                    b = stack.pop();
                    stack.push(a*b);
                    break;
                case "/":
                    a = stack.pop();
                    b = stack.pop();
                    if(a!=0)
                        stack.push(b/a);
                    else {
                        throw new Exception("деление на ноль ");
                    }
                    break;
                default:
                    stack.push(Double.parseDouble(elem[i]));
            }
        }
        System.out.println(stack.pop());
    }
}

Описание

В этом модуле используется 1 Java-файлов. Ключевые сущности: calculator.

tip

Для проверки практики сначала запускайте тестовый/демо-класс из папки задачи, затем расширяйте модель новыми кейсами.

Вывод

Task 20 — Калькулятор (ООП) документирует реальное решение из исходного кода.