《数值分析》上机题

《数值分析》上机题

ID:44587318

大小:1.94 MB

页数:62页

时间:2019-10-23

《数值分析》上机题_第1页
《数值分析》上机题_第2页
《数值分析》上机题_第3页
《数值分析》上机题_第4页
《数值分析》上机题_第5页
资源描述:

《《数值分析》上机题》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、《数值分析》上机实习题一、秦九韶算法1.源程序#include#include〃输出文件指针FILE*stream=NULL;typedeffloat*pFloat;〃和用户交互输入多项式各系数boolInputParam(int&n,pFloat&a,float&x){cout«"秦九韶算法5";coutvv”请输入最高次数n:";cin»n;if(n<=0)retunifalse;a=newfloat[n+lJ;for(inti=();i<=n;i++){cout«H请输入cin»a[ij;}cout«"请输入x的值:”;cin»x;re

2、turntrue;}〃按照格式打印多项式到文件屮voidOutputThcMultinomial(intn,pFloata,floatx){fprintf(stream,"此多项式为:");fprintf(stream,',P(x)=u);for(inti=n;i>=2;i—){fprintf(stream,"(%f)*x**%d+",a[i],i);)fprintf(stream,"(%f)*x+(%f),,,a[l],a[O]);fprintf(stream,"x=%f'x);}〃根据多项式各系数及给定的x值计算floatQinJiuShao(intn,pFloata,

3、floatx)floatr=a[n];for(inti=n-l;i>=0;i—)r=x*r+a[il;}returnr;}〃计算第一题voidCalculate1(){fprintf(stream,"秦九韶计算结果lu);intn=0;float*a=NULL;//指向存放多项式系数的指针floatx=0;charnext='Y://和用户交互进行输入并计算while(next=='YrIInext==y'){if(InputParam(n,a,x)){〃输出多项式OutputTheMultinomial(n,a,x);〃输出结果fprintf(stream,"计算结果为:P

4、(%f)=%fM,x,QinJiuShao(n,a,x));if(a){delete[]a;a=NULL;}}coutvv"是否进行下一次运算?(Y/N):“;cin»next;)}〃计算第二题voidCalculatc2(){fprintfCstream;嗪九紹计算结果2H);〃多项式系数floataf]={2.0f,・3.36f,2.81f,・2.74f,・3.27f,0.22f};intn=5;floatx=0;〃按每次递增0.05计算for(inti=0;i<=20;i++){x=0.8+0.05*i;〃输出多项式OutputTheMultinomial(n,a,x)

5、;〃输出结果fprintf(stream,"计算结果为:P(%f)=%f",x,QinJiuShao(n,a,x));voidmain(){〃打开输出结果文件if((stream=fopen("result.txt","w"))==NULL){printf(“打不开输出文件”);return;}〃通过川户输入计算第一题Calculate1();〃通过循环牛•成x值计算第二题Calculate2();〃关闭文件if(stream)fclose(stream);2.输出结果秦九韶计算结果1此多项式为:P(x)=(7.540000)*x**4+(11.080000)*x**3+

6、(3.820000)*x**2+(0.440000)*x+(-0.480000)x=3.250000计算结果为:P(3.250000)=1262.865112此多项式为:P(x)=(2.790000)*x**4+(9.850000)*x**3+(14.150000)*x**2+(5.380000)*x+(7.240000)x=3.250000计算结果为:P(3.250000)=823.586670此多项式为:P(x)=(9.360000)*x**4+(12.690000)*x**3+(14.390000)*x**2+(0.750000)*x+(-0.940000)x=3.250000

7、计算结果为:P(3.250000)=1633.377319此多项式为:P(x)=(3.450000)*x**4+(-2.910000)*x**3+(3.710000)*x**2+(-6.750000)*x+(-2.380000)x=3.250000计算结果为:P(3.250000)=299.878632此多项式为:P(x)=(12.780000)*x**4+(14.350000)*x**3+(17.190001)*x**2+(1.340000)*x+(-1

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。