Чекер для работы с выражениями

Задача

Общая постановка задачи

Вычисление выражений из файла.

На вход подается файл, в каждой строке которого есть инициализация переменной или вычисление выражения. Требуется вычислить выражение в контексте определенных раннее переменных или вывести сообщение об ошибке.

Пример:
x:=10;
y:=14;
z:=(x+y)*5;
z+x*(12+y);
Результат:
380

Параметры

Входной параметр:

input_file - текстовый файл с выражением

Обработка ошибок в файле

Возможные ошибки:

некорректное число скобок (есть неоткрытые/незакрытые скобки)

неинициализированы переменные

отсутствует ; в конце строки

деление на ноль

(можно согласовать добавление любых ошибок с преподавателем).

В случае, если в текстовом файле есть ошибки, то:

операционной системе возвращается ненулевой код возврата (return в main)

не создается выходного в файла

выводится сообщение об ошибке «Fail in <строка c ошибкой>».

сообщение об ошибке выводится для каждой ошибки.