Задача 2: Реализуйте поддержку выражений со скобками
Primary tabs
Задача 2: Реализуйте поддержку выражений со скобками
Как именно выполнять:
1. Составить ФБН для выражения поддержку которого требуется реализовать, за основу берем схему, составленную и проверенную ранее.
2. Создаем в своем репозитории новую ветку для реализации задачи со скобками - ответвляемся от созданной, для решения предыдущей задачи.
3. Добавляем тесты по мере решения задачи (и до и в процессе решения ;)
4. Выполнить реализацию, опираясь на составленную ФБН, добиться того, чтобы тесты выполнялись
Вот такую ФБН составил
<Digit> ::= [0-9]
<UnsignedInteger> ::= "0" | ([1-9] <Digit>*)
<Multiplier> ::= <UnsignedInteger> | <UnaryMinus> | "(" <Expression> ")"
<UnaryMinus> ::= "-" <Multiplier>
<Multiplication> ::= ( <Multiplier> | <Multiplication> | <Division> ) "*" <Multiplier>
<Division> ::= ( <Multiplier> | <Multiplication> | <Division> ) "/" <Multiplier>
<Term> ::= <Multiplier> | <Multiplication> | <Division> | <UnaryMinus>
<Addition> ::= ( <Term> | <Addition> | <Subtraction> ) "+" <Term>
<Subtraction> ::= ( <Term> | <Addition> | <Subtraction> ) "-" <Term>
<Expression> ::= <Term> | <Addition> | <Subtraction> - Log in to post comments
- 588 reads