C语言__用六种方法求定积分C语言__用六种方法求定积分

描述问题

利用①左矩形公式,②中矩形公式,③右矩形公式 ,④梯形公式,⑤simpson公式,⑥Gauss积分公式求解定积分。

分析问题

2.1定积分

21.1定积分的定义

定积分就是求函数在区间中图线下包围的面积。即所包围的面积。这个图形称为曲边梯形,特例是曲边梯形。

(图1)

设一元函数,在区间内有定义。将区间分成个小区间。设,取区间中曲线上任意一点记做,和式

若记λ为这些小区间中的最长者。当时,若此和式的极限存在,则称这个和式是函数 在区间上的定积分。

记:  其中称为积分下限,为积分上限,为被积函数, 为被积式,∫ 为积分号。

之所以称其为定积分,是因为它积分后得出的值是确定的,是一个而不是一个函数。x轴、函数f(x)的图形及两条直线x=a,x=bx轴上方的面积取正号;在x轴下方的面积取负号。如图

2.2言实现定积分计算的算法

22.1利用复合梯形公式实现定积分的计算

假设被积函数为,积分区间为,把区间等分成个小区间,各个区间的长度为,即,称之为“步长”。根据定积分的定义及几何意义,定积分就是求函数在区间中图线下包围的面积等分,各子区间的面积近似等于梯形的面积,面积的计算运用梯形公式求解,再累加各区间的面积,所得的和近似等于被积函数的积分值,越大,所得结果越精确。以上就是利用复合梯形公式实现定积分的计算的算法思想。

复合梯形公式:

[2]

具体算法如下:

算法一

1:输入积分区间的端点值和;

2:输入区间的等分个数(要求尽可能大,以保证程序运行结果有较高的精确度);

3:计算步长;

4:对累加和赋初值;

5:计算累加和

6:算出积分值;

7:输出积分近似值,完毕。

1.2.2利用Smpson公式实现定积分的计算

假设被积函数为,积分区间为,把区间等分成个小区间,各个区间的长度为。在复合梯形公式的基础上,构造出一种加速计算积分的方法。作为一种外推算法, 它在不增加计算量的前提下提高了误差的精度。

具体算法如下:

算法二

1:输入积分上限和下限;

2:输入区间的等分个数(要求尽可能大,以保证程序运行结果有较高的精确度);

3:利用辛甫生公式:[2],实现对定积分的求解(其中,均为梯形公式计算所得的结果,由此可见辛甫生公式是以梯形公式为基础的);

4:算出积分值;

5:输出积分近似值,完毕。

1.2.3利用Guass公式实现定积分计算

Guass型求积公式是构造高精度差值积分的最好方法之一。他是通过让节点和积分系数待定让函数f(x)以此取i=0,1,2....n次多项式使其尽可能多的能够精确成立来求出积分节点和积分系数。高斯积分的代数精度是2n-1,而且是最高的。通常运用的是-1---+1的积分节点和积分系数,其他积分域是通过变换x=(b-a)t/2 +(a+b)/2 变换到-1到1之间积分。和下限;

2:利用Guass公式,求定积分

4:算出积分值;

5:输出积分近似值,完毕。

程序的编写

3.1程序一(左矩形公式)

3.1.1源程序

#include

#include

void main()

{double f(double x);

/*f(x)为函数举例,即被积函数*/

int i,n;

/*n为区间等分的个数,应尽可能大*/

double a,b,h,;

/*a为积分下限,b为积分上限,h为步长*/

printf(" a:\n");

scanf("%lf",&a);

printf("积分上限 b:\n");

scanf("%lf",&b);

printf("区间等分个数 n :\n");

scanf("%d",&n);

h=(b-a)/n; /*步长的计算*/for(i=1;i

{s=s+f(a+i*h)*h;

}

printf("函数 f(x) 的积分值为 s=%10.6f\n",s);

}

/*以下为被积函数的定义,即函数举例*/

double f(double x)

{double y;

y=;

return (y);}

3.1.2程序一的编译运行

被积函数为f(x)=sqrt4-(x*x)的情况

先编译,再运行,屏幕显示及操作如下:

输入0+回车

输入2+回车

输入1000+回车

3.2程序二(中矩形公式)

3.2.1源程序

#include

#include

void main()

{double f(double x);

/*f(x)为函数举例,即被积函数*/

int i,n;

/*n为区间等分的个数,应尽可能大*/

double a,b,h,;

/*a为积分下限,b为积分上限,h为步长*/

printf(" a:\n");

scanf("%lf",&a);

printf("积分上限 b:\n");

scanf

用C语言编码定积分,C语言__用六种方法求定积分C语言__用六种方法求定积分.doc...相关推荐

  1. 计算星期c语言编码,[转载]计算任何一天是星期几的C语言源代码.

    [转载]计算任何一天是星期几的C语言源代码. #include int main() { int day,mn,yr,i,days=0,s,k; int mont[13]={0,31,28,31,30 ...

  2. 【转】嵌入式软件:C语言编码规范

    引  言 嵌入式系统是指以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能.可靠性.成本.体积和功耗严格要求的专门计算机系统.嵌入式技术并不是一个独立的学科,它是伴随着微电子技术和计算 ...

  3. Java语言用于定义接口的关键字是_定义类的保留字是(__)定义接口的保留字是(__);...

    [单选题]为了使包sos在当前程序中可见,可以使用的语句是( ) [单选题]方法的作用不包含:( ) [判断题]水平方向布置的三相平行导体在发生三相短路时 , 最大电动力出现在 A 相. ( ) [单 ...

  4. Java语言所有异常类均继承自_Java将运行错误分为两类:(__)和(__), 其对应的类均派生自(__)类;...

    [单选题]设 x,y 均为已定义的类名,下列声明对象x1的语句中正确的是( ) [判断题]构造函数的方法名可以由编程人员任意命名. [单选题]能够实现对原文的鉴别和不可否认性的认证技术是( ). [单 ...

  5. C语言编码规范汇总篇

    PDF资源链接:https://download.csdn.net/download/rootcode/11614413 或自己复制以下文章即可! C语言编码规范 1--文件与目录 1.文件及目录的命 ...

  6. c语言中二进制用什么字母表示方法,看C语言编码转换--------负数的二进制表示方法...

    今天在看C语言编码转换时,既然对负数的二进制表示有些遗忘,查了下网上的资料,他们说的是个P!误人子弟!和大家讨论了下,贴出来已备在此遗忘: 假设有一个 int 类型的数,值为5,那么,我们知道它在计算 ...

  7. 来自 Google 的 R 语言编码风格指南

    来自 Google 的 R 语言编码风格指南 R 语言是一门主要用于统计计算和绘图的高级编程语言. 这份 R 语言编码风格指南旨在让我们的 R 代码更容易阅读.分享和检查. 以下规则系与 Google ...

  8. Java语言编码规范(1)

    Java语言编码规范 原文出处http://java.sun.com/docs/codeconv/html/CodeConvTOC.doc.html 2 文件名(File Names) 这部分列出了常 ...

  9. c语言中0到9的as编码c2,(全国计算机等级考试二级笔试样卷VsualBasc语言程序设计.doc...

    (全国计算机等级考试二级笔试样卷VsualBasc语言程序设计 全国计算机等级考试二级笔试样卷Visual Basic语言程序设计 [打印][字体:大 中 小][关闭] 选择题(每小题2分,共70分) ...

  10. c语言编码风格,讲嵌入式C语言编码风格.ppt

    讲嵌入式C语言编码风格 目 录 简介及说明 语言规则 1.基础 2.数据 3.说明与表达式 4.函数 5.内存及资源 6.源文件 风格指导 7.程序书写 8.命名 9.文档 简介及说明 正确性 易维护 ...

最新文章

  1. [文摘20070930]人际关系,你有五十五招
  2. 【Android开发经验】android:windowSoftInputMode属性具体解释
  3. hash+set Codeforces Round #291 (Div. 2) C. Watto and Mechanism
  4. 查看分支编码_高性能编码规范驳斥(一)
  5. 【C语言】利用递归函数求n的阶乘
  6. Java盲点:双重检查锁定及单例模式
  7. 【操作系统/OS笔记06】虚拟内存、覆盖、交换
  8. matlab各种出错,matlab常见错误命令汇总
  9. 作为IT男必须会Linux服务器被攻击后如何处理!网友:这个要会!
  10. VTK笔记-组建vtkPolyData-四面体/五面体/六面体
  11. Java小游戏总结(五子棋)
  12. android10 imei横线,【报Bug】android10设备plus.device.getInfo获取imei为空
  13. 在vue中使用Animate.css
  14. 一分钟教你制作个人文字头像
  15. 号码归属地查询 核心平台 NGD
  16. 西门子S7-1200控制V90伺服
  17. 深入浅出JS—20 生成器控制函数执行
  18. OSChina 周五乱弹 —— 到底哪个更重要
  19. 树莓派学习(三)基于OpenCv的人脸识别
  20. CentOS系统安装(7.8.2003)

热门文章

  1. 计算机专业大学几年,20年计算机专业大学排名大全
  2. Hadoop小兵笔记【五】hadoop2.2.0伪分布式环境搭建疑难-第一个用例wordcount失败
  3. 传说哥和Meepo之间不为人知的故事
  4. 简单抢铁路票代码-selenium
  5. github Pages:利用github仓库做免费服务器储存,建立个人网站
  6. 图形杂记--基础概念补充
  7. 查找字段的筛选-使用addCustomView
  8. Error: error:0308010C:digital envelope routines::unsupported
  9. Java——打印N以内的素数
  10. 酒店再爆乱象,人工智能就能成卫生良药?