实验报告
课程名称:课题名称:专业:姓名:班
级:
完成日期:
姓名陈亮
评分
实验报告
数值分析
对比传统多项式求值和秦九韶算法勘察技术与工程(地球物理方向)
陈亮061132
2015年
10月
21日
《数值分析》实验报告
实验报告
一、实验名称
对比传统多项式求值和秦九韶算法的区别
二、实验目的
(1)培养编程与上机使用(2)使用不同算法的差异(3)评估各算法稳定性
MATLAB能力
三、实验要求
(1)利用matlab编写算法;(2)计算算法的复杂度。
四、实验原理
秦九韶算法是一种将一元
n次多项式的求值问题转化
为n个一次式的算法。
五、实验题目
秦九韶算法和传统算法复杂度对比
六、实验步骤
(1)写出秦九韶算法表达式:(2)利用Matlab编程计算(3)最后结果分析
《数值分析》实验报告
七、实验整体流程图或算法
八、程序及其运行结果
clear all
;clc
%清除变量
a=input('please input a()=');%输入系数x=input('please input x='
);%输入变量值
n=length(a);%计算最高次
ticm(1)=a(n)for j=2:n%传统循环 m(j)=m(j-1)+a(n+1-j)*(x.^(j-1));
endm(n)toc tic;
%开始计时
s(1)=a(1)%赋值for i=2:n
%秦九韶循环 s(i)=s(i-1)*x+a(i);
《数值分析》实验报告
ends(n)toc
结果:
please input a()=[12,11,1,115,12,10] please input x=1.2
ans =
244.3974
时间已过 0.001990
秒。
ans =
244.3974
时间已过 0.000361 秒。
九、实验结果分析
传统算计算n次多项需要(n+1)/n次乘法和n次加法,秦九韶算法只用计算次加法,乘法复杂度从
O(n^2)降为O(n)。
运算时间会有很大的变化。
还是
我发现了问题,就是在调整秦九韶算法和传统算法的顺序,不是很清楚原理。希望老师给下解答。
n次乘法和n
十、实验体会
充分锻炼了自己,每次都会有许许多多的小错误,解决了很多,但是还是有一些无法解决。还需要努力。