变步长梯形法求积分Fortran程序
program main
external bianbuchangtixing real a,b
print*,'输入积分上线a,下线b' read* ,a,b
call bianbuchangtixing(a,b)
print*,'准确结果为 : 0.9460831' end
function f(x) real x,f
if (x==0)then f=1. else
f=sin(x)/x endif
end function
subroutine bianbuchangtixing(a,b) real a,b,s, x ,h, T1,T2,epslen epslen=10**-10 ; T2=0. h=b-a
T1=h*(f(a)+f(b))/2
do while(abs(T1-T2)>epslen) s=0
x=a+(h/2) do while(x
T2=(T1/2)+s*h/2 h=h/2 T1=T2 enddo
print*,'变步长梯形法结果为',T2 end subroutine
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库变步长梯形法求积分Fortran程序在线全文阅读。
相关推荐: