Скачать Интерпретатор Арифметических Выражений

16.03.1995
Скачать файл (6,43 Кб)

{***************************************************************************}
{*                              SWEXPR.PAS                                 *}
{*                  SoftWeyr Expression Interpreter                        *}
{*                              Version 1.0                                *}
{*               Copyright (c) by SoftWeyr,1994                            *}
{***************************************************************************}

Общие положения:

этот модуль содержит средства для интерпретации арифметических выражений (типа Real) передаваемых в виде строковых переменных. Выражения могут содержать:

  1. Вещественные константы в формате, принятом в языке Pascal
  2. Операции * / + - (вычисление в степень реализовано как стандартная функция)
  3. Функции как стандартные, так и определенные пользователем, имеющие до MaxStackDepth параметров
  4. Определенные пользователем переменные (тогда пользователю придется самому озаботится, чтобы им было присвоено значение, и как они будут храниться)
  5. Круглые скобки в любом количестве.

При компиляции в Pascal версии 6.0 и выше количество функций и переменных ограничено 16384, в версии 5.x - значениями констант MaxFuncCount и MaxVarCount. Выражения сначала компилируются во внутренний псевдокод, а затем уже он интерпретируется (и, по-моему должен это делать достаточно быстро)