Как преобразовать строковое уравнение C# в ответ
Я создаю приложение WP8, которое решает задачи численного анализа. Для одного шага мне нужно разобрать введенную функцию, но у меня нет никаких знаний о разборе, и я попробовал что-то еще
У меня есть стековая панель с математическими компонентами (Sin(x),Cos(x),Tan(x),+,-,*...)
когда пользователь нажимает на любой компонент
Например, сначала Sin (x), затем +, а затем Cos (x)
string yazılıdenklem =""; int xdegeri=Convert.ToInt32(Xtxt.Text);
private void Sin_Tapped(object sender, TappedRoutedEventArgs e)
{
yazılıdenklem=yazılıdenklem+"Math.Sin("+xdegeri.ToString()+")";
}
private void artı_Tapped(object sender, TappedRoutedEventArgs e)
{
yazılıdenklem = yazılıdenklem + "+";
}
private void Cos_Tapped(object sender, TappedRoutedEventArgs e)
{
yazılıdenklem = yazılıdenklem + "Math.Cos(" + xdegeri.ToString() + ")";
}
Конец выбора У меня есть строковое уравнение типа: "Math.Sin(3)+Math.Cos(3)" Могу ли я преобразовать это уравнение в любую числовую форму? Могу ли я получить какой-либо результат из этой строки экв.? Спасибо
1 ответ
bcParser.NET - это безопасная функция eval() для оценки математических формул. bcParser.NET - это математическая библиотека синтаксического анализатора для платформы.NET. bcParser.NET анализирует и оценивает математические выражения, заданные в виде строк во время выполнения.
MathParser.SetExpression("sin(3)+cos(3)");
double value = MathParser.getValueAsDouble();