秦九韶公式
作为语文课代表我当然要为大家科普一下一些常识~
秦九韶(约公元1202年-1261年),字道古,南宋末年人,出生于鲁郡(今山东曲阜一带人)早年曾从隐君子学数术,后因其父往四川做官,即随父迁徙,也认为是普州安岳(今四川安岳县)人秦九韶与李冶、杨辉、朱世杰并称宋元数学四大家。(安岳县于1998年9月正式开工建设秦九韶纪念馆,2000年12月竣工落成。)秦九韶聪敏勤学,宋绍定四年(公元1231),秦九韶考中进士,先后担任县尉、通判、参议官、州守等职。先后在湖北、安徽、江苏、浙江等地做官。南宋理宗景定元年(公元1260年)出任梅州太守,翌年卒于梅州。据史书记载,他“性及机巧,星象、音律、算术以至营造无不精究”,还尝从李梅亭学诗词。他在政务之余,以数学为主线进行潜心钻研,且应用范围至为广泛:天文历法、水利水文、建筑、测绘、农耕、军事、商业金融等方面
秦九韶是我国古代数学家的杰出代表之一,他的《数书九章》概括了宋元时期中国传统数学的主要成就,尤其是系统总结和发展了高次方程的数值解法与一次同余问题的解法,提出了相当完备的“正负开方术”和“大衍求一术”。对数学发展产生了广泛的影响.
秦九韶是一位既重视理论又重视实践,既善于继承又勇于创新的科学家,他被国外科学史家称为是“他那个民族,那个时代,并且确实也是所有时代最伟大的数学家之一
当然以上内容摘自百度百科!
emmmmm
不闹了,讲正文
这个算法可以求一个多项式的值,并且可以简化次数
例如我要求一个
\(y = ax^4+bx^3+cx^2+dx+e\)
我们可以首先对前四项提取公因式提出\(x\)
则原方程就变为了
\(y=x(ax^3+bx^2+cx+d)+e\)
再对前三项进行提取公因式又变成了
\(y=x[x(ax^2+bx+c)+d]+e\)
可以发现我们可以一直递归求解
注意开始计算的时候是要从最高次开始计算而且循环从\(n-1\)开始因为最后一项只需要加不需要乘
Code:
for(int i = n - 1; i >= 0; i--) ans = ans * x + a[i];
谢谢收看, 祝身体健康!