真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

C語言編寫定積分通用函數(shù) c語言求積分

用C語言編寫一個(gè)求定積分的程序

這是辛普森積分法。

創(chuàng)新互聯(lián)建站長(zhǎng)期為上1000+客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為閩清企業(yè)提供專業(yè)的成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè),閩清網(wǎng)站改版等技術(shù)服務(wù)。擁有10多年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。

給你寫了fun_1( ),fun_2(),請(qǐng)自己添加另外幾個(gè)被積函數(shù)。

調(diào)用方法 t=fsimp(a,b,eps,fun_i);

a,b --上下限,eps -- 迭代精度要求。

#includestdio.h

#includestdlib.h

#include math.h

double fun_1(double x)

{

return 1.0 + x ;

}

double fun_2(double x)

{

return 2.0 * x + 3.0 ;

}

double fsimp(double a,double b,double eps, double (*P)(double))

{

int n,k;

double h,t1,t2,s1,s2,ep,p,x;

n=1; h=b-a;

t1=h*(P(a)+P(b))/2.0;

s1=t1;

ep=eps+1.0;

while (ep=eps)

{

p=0.0;

for (k=0;k=n-1;k++)

{

x=a+(k+0.5)*h;

p=p+P(x);

}

t2=(t1+h*p)/2.0;

s2=(4.0*t2-t1)/3.0;

ep=fabs(s2-s1);

t1=t2; s1=s2; n=n+n; h=h/2.0;

}

return(s2);

}

void main()

{

double a,b,eps,t;

a=0.0; b=3.141592653589793238; eps=0.0000001;

// a definite integral by Simpson Method.

t=fsimp(a,b,eps,fun_1);

printf("%g\n",t);

t=fsimp(a,b,eps,fun_2);

printf("%g\n",t);

// ...

printf("\n Press any key to quit...");

getch();

}

C程序設(shè)計(jì):編制求解定積分的通用函數(shù)

#includestdio.h

#includemath.h

float f1(float a)

{

float z;

z=a+1;

return(z);

}

float f2(float a)

{

float z;

z=2*a+3;

return(z);

}

void integral(float a,float b,float (*fun)(float ))

{

float i,trace,hight1,hight2,area,sum=0;

trace=(b-a)/1000;

for ( i=a;ib;i+=trace )

{

hight1=(*fun)(a);

a+=trace;

hight2=(*fun)(a);

area=(((hight1+hight2)*trace)/2);

sum+=area;

}

printf("sum=%f\n",sum);

}

void main()

{

float a,b,sum1;

printf("*************************\n");

printf("請(qǐng)輸入該定積分的上下區(qū)間a和b:\n");

scanf("%f %f",a,b);

integral(a,b,f1(a));

integral(a,b,f2(a));

}

怎樣編寫c語言積分函數(shù)

積分分為兩種,數(shù)值積分,公式積分。

公式積分:部分函數(shù)可以直接用公式求得其不定積分函數(shù)。C語言中可以直接用積分公式寫出其積分函數(shù)。

數(shù)值積分:按照積分的定義,設(shè)置積分范圍的步長(zhǎng),用梯形面積累加求得其積分。

以【f(x)=x*sin(x) 從1到2的積分】為例:

#include?math.h

#include?stdio.h

double?integral(double(*fun)(double?x),double?a,double?b,int,n){

double?s,h,y;

int?i;

s=(fun(a)+fun(b))/2;

h=(b-a)/n;?/*積分步長(zhǎng)*/

for(i=1;in;i++)

s=s+fun(a+i*h);

y=s*h;

return?y;/*返回積分值*/

}

double?f(double?x){

return(x*sinx)??/*修改此處可以改變被積函數(shù)*/

}

int?main(){

double?y;

y=integral(f,1.0,2.0,150);/*修改此處可以改變積分上下限和步數(shù),步長(zhǎng)=(上限-下限)/步數(shù)*/

printf("y=%f\n",y);

return?0;

}


本文名稱:C語言編寫定積分通用函數(shù) c語言求積分
轉(zhuǎn)載源于:http://weahome.cn/article/doiesch.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部