1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
|
program dich
integer i
real amax, amin, amoy, b
print*,'donner amax'
read*, amax
print*,'donner amin'
read*, amin
print*,'donner b'
read*,b
amoy=(1./2.)*(amin+amax)
i=1
do while(abs(b-f(amoy)).lt.0.001)
if((f(amin).LT.f(amax)).AND.(beta.LT.f(amoy))) then
amax=amoy
else if((f(amin).LT.f(amax)).AND.(beta.GT.f(amoy))) then
amin=amoy
else if((f(amin).GT.f(amax)).AND.(beta.GT.f(amoy))) then
amax=amoy
else
amin=amoy
end if
amoy=0.5*(amin+amax)
i=i+1
enddo
print*,'alpha=',amoy
end
real function f(x)
real x
f=x**3
return
end |
Partager