! 2.8.f90 ! $Id: 2.8.f90 1.2 2024/12/07 04:13:47 s Exp $ ! program ex2_8 implicit none integer :: i real(8) :: eps,left,mid,right i=1 eps =1.0e-5 left =0.0 right=1.0 mid=(left+right)/2.0 do while(abs(f(mid))>eps) if(f(mid)>0.0) then right=mid else left=mid end if mid=(left+right)/2.0 i=i+1 end do print *, 'c= ', mid print *, 'f(c)= ', f(mid) print *, 'i= ', i stop contains function f(x) implicit none real(8) :: f real(8) :: x f=-24000.0+6000.0*x+6000.0*x**2+6000.0*x**3+6000.0*x**4+10000.0*x**5 return end function f end program ex2_8 ! end