Silverlight: MathParser Library

суббота, 10 апреля 2010, Michael Yushchenko

Здравствуйте. Решил написать о реализации математического парсера для вычисления функций и математических выражений. Когда я разрабатывал программу "Численные матоды" на Silverlight, то встретился с проблемой, что несмотря на большое количество готовых библиотек нет такой, которую можно было бы использовать в Silverlight. Во всех версиях были проблемы с наличием библиотек, которые не поддерживаются в Silverlight. В итоге я нашел одну библиотеку, которую немного дописал. Возможно, кому-то она понадобится.

Для того чтобы использовать библиотеку вам необходимо будет взять функцию, которая выполняет вычисления по полученным параметрам. На вход мы подаем InputExpression-выражение, функцию и переменную которую мы используем в функции.

private static double CalculateFunctionX(string InputExpression, double x)
{
    Parser MathParser = new Parser();
    string newStr = "";

    for (int i = 0; i < InputExpression.Length; i++)
    {
       switch (InputExpression[i])
       {
          case 'x': newStr += x.ToString(); break;
          case 'X': newStr += x.ToString(); break;
          default: newStr += InputExpression[i]; break;
       }
    }

    MathParser.Evaluate(newStr);
    return MathParser.Result;
}

Пример использования библиотеки (x = 1):

Результат выполнения:

Вот и все. 

Благодарю за внимание.

Скачать: http://silverlightmathparse.codeplex.com/releases/view/43360


Ищите нас в интернетах!

Комментарии

Свежие вакансии