Silverlight: MathParser Library
Здравствуйте.
Решил написать о реализации математического парсера для вычисления
функций и математических выражений. Когда я разрабатывал программу "Численные матоды" на 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