You are on page 1of 2

program newton

real x0,x1,err,n,ab1,iter

write(*,*) ' donner la valeur de x0,err,n'

read(*,*)x0,err,n

iter=0

ab1=100

do while (ab1.gt.err.and.iter.lt.n)

x1=x0-(f(x0)/g(x0))

iter=iter+1

ab1=abs(x1-x0)

x0=x1

write(*,*)x1,iter

if(ab1.lt.err)then

write(*,*)'convergenge atteinte'

if(iter.gt.n)then

write(*,*)'convergence non atteinte '

end if

endif

enddo

WRITE(*,*)'x1=',x1

WRITE(*,*)'f(x1)=',f(x1)

WRITE(*,*)'err=',err

stop

end

function f(x)

real f,x

f=exp(-x)-x
return

stop

end

function g(x)

real g,x

g=-exp(-x)-1

return

stop

end

You might also like