我有一个这样的等式:
a = b(x-c)^d-e(x-f)^g
a
,b
,c
,d
,e
,f
和g
是已更改的已知数字。 x
未知。
我想找x。如何使用C#代码执行此操作?
答案 0 :(得分:3)
a,b,c,d,e,f和g是已知的改变数
那么,您是否知道值并希望找到符合等式的x
值?或者你是否试图根据这些变量提出方程 ?我很确定基于该公式,x没有封闭形式的等式。
如果您知道 a
,b
,c
,d
,e
,{{1}的值}和f
,然后您可以使用root-finding algorithm来查找x的值。
首先将等式重新排序为
g
然后使用寻根算法。
Newton方法和Secant方法相当容易编码,您可以在线找到现有的C#实现。
答案 1 :(得分:0)
NCalc可以做你需要的。
链接位于:http://ncalc.codeplex.com/。
示例功能
Expression e = new Expression("2 + 3 * 5");
Debug.Assert(17 == e.Evaluate());