Skip to content

Latest commit

 

History

History
22 lines (16 loc) · 691 Bytes

README.md

File metadata and controls

22 lines (16 loc) · 691 Bytes

Парсер выражений

Домашнее задание выполненное мною в университете.

ExpressionParse парсит данную строчкy и строит её модель в виде дерева, по сути здесь написана маленькая часть парсера для калькулятора.

Примеры использования:

new Subtract(
        new Multiply(
            new Const(2),
            new Variable("x")
        ),
        new Const(3)
).equals(ExpressionParser.parse("(2*x)*x"));


ExpressionParser.parse("(5 - 3 * y) + 10")
        .evaluate(Map.of("y", 2))
        .equals(9);