有人有这个算法的代码吗?任何基于C的编程语言都可以,但我更喜欢C#。
我可以尝试去实现但我肯定不是第一个.
编辑:这不是家庭作业,这是一个“给我机会”的问题:我只是不想重新发明轮子
发布于 2010-11-26 16:03:12
GoalSeek最有可能使用二分法
数学中的二分法是一种求根方法,它反复对一个区间进行平分,然后选择一个根必须位于其中的子区间进行进一步的处理。这是一个非常简单和健壮的方法,但它也相对缓慢。正因为如此,人们常常用它来获得解的粗略近似,然后作为更快速收敛方法的起点。1--这种方法也称为区间减半法,2 --二进制搜索法--3或二分法。
我在这里找到了一个C#实现:基于二分的XIRR在C#中的实现
发布于 2016-05-13 11:37:12
看一下:
https://www.nuget.org/packages/TridentGoalSeek/
您的算法需要实现IGoalSeekAlgorithm接口。然后使用如下:
var myAlgorithm = new MyAlgorithm(90463.45M, 200);
var goalSeeker = new GoalSeek(myAlgorithm);
var seekResult = goalSeeker.SeekResult(96178.21M);
发布于 2018-10-14 14:25:38
试试https://www.nuget.org/packages/Budoom.GoalSeek/
样本使用情况:
var sc = new SomeCalculation(); //implements interface Budoom.IGoalSeek
var goalSeek = new Budoom.GoalSeek(sc);
var goalSeekResult = goalSeek.TrySeek();
或者使用静态方法并将计算函数传递给它,如下所示:
var goalSeekResult = Budoom.GoalSeek.TrySeek(Calculate);
https://stackoverflow.com/questions/4284301
复制相似问题