Ответ: парсинг математического выражения
Парсинг собственно прост. Сначала разложи код на лексемы:
цифра(2), оператор(*), начало_выражения, цифра(1), оператор(+), цифра(2), оператор(/), цифра(2), конец_выражения.
Пишется процедура, которая посимвольно проверяет строку на соответствие какой либо группе. Например проверяем в твоём случае: находим символ 2. Предполагаем что это Int. Далее стоит символ "*". Он не подходит под определение Int. Добавляем 2 в список лексем как Int. Потом * туда же добавляем как оператор. И так далее, до конца строки.
Таким образом проверишь синтаксис выражения на простые ошибки. Вдруг кто-то напишет не 10+0.9, а 10+09.
Остальное можно разложить в стек или построить дерево выражения.
|