Идея навеяна темой : Строковый калькулятор на VB 6.0
Калькулятор воспринимает формулы с:- сложением +
- вычитанием -
- делением /
- умножением *
- возведением в степень ^
- скобками ()
17.05.2016 - увеличен приоритет для возведения в степень ^
- переоформление интерфейса
- правка багов
19.03.2015- автоподсчет во время написания формулы
- сохранения во временный файл последних операций
- исправлены некоторые баги
Принцип задания приоритета выполнения:- Если математическая формула имеет скобки, то выполняется выражение сначала в них
- Для логики расчета, возведение в степень имеет особый приоритет над другими мат. действиями
- если выражение имеет действия умножения/деления/возведения в степень, то выполняются они
- действия сложения или вычитания выполняются в самую последнюю очередь
Порядок выполнения задается слева на право, т.е. сначала выполняется самая левая скобка, самое левое возведение в степень, затем умножение/деление и самое левое сложение/вычитание. И так по мере упрощения формулы от 1й ступени до 4й.
Исходный код и готовый EXE в архиве. |