C语言实现黎曼和求定积分
本文实例为大家分享了C语言程序实现黎曼和求定积分,供大家参考,具体内容如下
通过黎曼和解定积分既是把在xy平面中函数曲线与x轴区间区域划分成多个矩形并求它们的面积之和,矩形数量越多,得出的面积越精确。
#include#include #include #include intmain(){ floatfunction1(float);//函数f(x)1 floatfunction2(float);//函数f(x)2 floatfunction3(float);//函数f(x)3 voidintegration(floatf(float),float,float);//求定积分方法,参数为,函数fx,区间[a,b]的两个点 intresult_a=integration(function1,1,0); intresult_b=integration(function2,1,-1); intresult_c=integration(function3,2,0); } voidintegration(floatf(float),floatendPos,floatstartPos)//求定积分方法,参数为,函数fx,区间[a,b]的两个点 { floatx; floattotalArea=0;//totalArea,所有矩形的总面积 floatn=1000;//将函数曲线下方划为n个矩形,n值越大,精确值越高 floatwidth;//单个矩形宽度 floatarea=0;//单个矩形面积 width=(endPos-startPos)/n;//求单个矩形宽度,既是函数总长度除以矩形数量 for(floati=1;i<=n;i++)//计算每个矩形的面积 { x=startPos+width*i;//转入到xy平面,通过i的递增,得出每个矩形底部x的值,以求矩形高度 area=f(x)*width;//用x做实参调用函数进一步求出y值,既矩形的高度,再用底乘高得出面积 totalArea=totalArea+area;//各个矩形面积相加 } printf("thevalueoffunctionis%f",t2); } floatfunction1(floatx){//函数f(x)1 floaty; y=sin(x); returny; } floatfunction2(floatx){//函数f(x)2 floaty; y=cos(x); returny; } floatfunction3(floatx){//函数f(x)3 floaty; y=exp(x); returny; }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。