定步长复化梯形求解积分方程

王朝other·作者佚名  2006-01-09
宽屏版  字体: |||超大  

/**

***定步长复化梯形求解积分方程***

n-1 n-1

定步长复化梯形公式: Tn= ∑ h/2〔 f(a) + f(b) + 2 ∑ f(x(k)) 〕

k=0 k=0

属性:数值积分法

n-1

误差(精度):I - Tn = ∑ [ - h*h/12 f''(ε(k)) ] ≈ - h*h/12 [ f'(b) - f'(a) ]

k=0

步长:h = ( b - a ) / n

《数值分析简明教程》-2 Editon -高等教育出版社- page 64 无算法流程图

代码维护:2005.6.14 DragonLord

**/

#include<iostream.h>

#include<math.h>

#include<stdio.h>

double f(double x)

{

double f;

if(x==0)f=1;

else f=sin(x)/x;

return f;

}

int main()

{

double h,s,a,b,n,x;

while(cin>>a>>b>>n)

{

h=(b-a)/n;

s=f(b)+f(a);

x=a;

for(int i=0;i<n;i++)

{

x=x+h;

s=s+2*f(x);

printf("x=%.7f f(x)=%.7f s=%.7f\n",x,f(x),h*s/2);

}

}

return 0;

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有