用梯形法或者辛普森法数值积分分别用Matlab和c语言实现

上传人:20****03 文档编号:154556790 上传时间:2020-12-07 格式:DOCX 页数:5 大小:50.99KB
返回 下载 相关 举报
用梯形法或者辛普森法数值积分分别用Matlab和c语言实现_第1页
第1页 / 共5页
用梯形法或者辛普森法数值积分分别用Matlab和c语言实现_第2页
第2页 / 共5页
用梯形法或者辛普森法数值积分分别用Matlab和c语言实现_第3页
第3页 / 共5页
用梯形法或者辛普森法数值积分分别用Matlab和c语言实现_第4页
第4页 / 共5页
用梯形法或者辛普森法数值积分分别用Matlab和c语言实现_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《用梯形法或者辛普森法数值积分分别用Matlab和c语言实现》由会员分享,可在线阅读,更多相关《用梯形法或者辛普森法数值积分分别用Matlab和c语言实现(5页珍藏版)》请在金锄头文库上搜索。

1、Matlab作业(一)作业要求:用梯形法或者辛普森法数值积分,分别用Matlab和c语言实现。C语言1. 程序代码:#include #include double fun(double x) return x*x;double definfresult1(double (*pfun)(double),double a,double b,double eps)int n=1;double h,k,tn,tn1,fh,fh1=0;double fa=pfun(a);double fb=pfun(b);tn=(b-a)*(fa+fb)/2;do for(k=0,fh1=0;k= eps);retu

2、rn tn;int main() double a,b,eps,definfresult;printf(积分下限a=);scanf(%lf,&a);printf(积分上限b=);scanf(%lf,&b);printf(精度eps=);scanf(%lf,&eps);definfresult=definfresult1(fun,a,b,eps); printf(n计算结果=%.7lfn, definfresult);2.运行结果:MatLab1. 程序代码:function y=fun1(x) y=x*x; function result=definf1(fhandle, a, b, eps)

3、fa=feval(fhandle, a);fb=feval(fhandle, b); tn=(b-a)*(fa+fb)/2; tn1=0; n=1; fh1=0; while abs(tn- tn1) eps fh1=0; for i=0:n-1 h=(b-a)/n; fh=feval(fhandle,a + (2*i + 1)*(b-a)/(2*n) ); fh=fh+fh1; fh1=fh; end; tn1=tn;tn=(tn1+fh*h)/2;n=2*n; end result=tn; result=definf1(fun1, 0, 10,0.001 )result = 333.33352.运行结果

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号