Delphi World - это проект, являющийся сборником статей и малодокументированных возможностей  по программированию в среде Delphi. Здесь вы найдёте работы по следующим категориям: delphi, delfi, borland, bds, дельфи, делфи, дэльфи, дэлфи, programming, example, программирование, исходные коды, code, исходники, source, sources, сорцы, сорсы, soft, programs, программы, and, how, delphiworld, базы данных, графика, игры, интернет, сети, компоненты, классы, мультимедиа, ос, железо, программа, интерфейс, рабочий стол, синтаксис, технологии, файловая система...
Компонент MathParser

Оформил: DeeCo

Автор: Константин Колганов

Компонент MathParser разбирает математические выражения и вычисляет их. Математическое выражение может состоять из чисел (целых и действительных), переменных (любая последовательность букв и цифр начинающаяся с буквы), действий арифметики (плюс, минус, умножить, разделить, возвести в степень ), функций (любая последовательность букв и цифр начинающаяся с буквы и заканчивающаяся круглыми скобками) и скобки для задания приоритетов. Переменные и функции чувствительны к регистру.

Свойства
Expression - тип String, математическое выражение, которое нужно вычислить. Например
x^2+sin(exp(x))-b+2
Variables - тип TStrings, представляет набор переменных и их значений, разделенных знаком =. Например
x=2
b=2
Методы
Execute - возвращает значение выражения, при данных значениях переменных.
Возвращаемое значение имеет тип Real.
Исключения
  • EUntrueSequence - недопустима последовательность символов, например x(3);
  • EUnknownSymbol - недопустимый символ, например @;
  • EUndeclaredIdentifier- неизвестный идентификатор;
  • EUnknownFunction - неизвестная функция;
Допустимые символы:
+    -  плюс;
-     - минус;
*    - умножение;
/     - дделение;
^   - возведение в степень;
( )  -скобки;
1..9 - числа;
. или ,- разделитель дробной части;
Функции
  • sin - синус;
  • cos-косинус;
  • tan-тангенс;
  • exp-экспонента;
  • ln - логарифм натуральный;
  • sqrt - корень;
  • arctan - арктангенс;
Скачать исходные коды: MathComp.zip (6К)
Проект Delphi World © Выпуск 2002 - 2004
Автор проекта: ___Nikolay