PROGRAM pi_calc_01a

IMPLICIT NONE

! Déclarations
INTEGER :: i = 1
DOUBLE PRECISION :: pi = 1D0, delta, pm_un = -1D0

! Calculs
helice: DO
  i = i + 1
  delta = 1D0/(2D0*DBLE(i)-1D0)
  pi = pi + pm_un*delta
  pm_un = -pm_un
  ! IF(delta<1D-6) EXIT helice  ! Boucler indéfiniment si commentée
END DO helice

WRITE(*,*) "Nous n'allons jamais arriver ici..."
WRITE(*,*) "...à moins que la ligne 'IF(delta<...) EXIT helice'"
WRITE(*,*) "ne soit décommentée."

pi = pi*4.D0

WRITE(*,*) 'Après la dernière itération:'
WRITE(*,*) 'i, delta, pi'
WRITE(*,*) i, delta, pi

END PROGRAM pi_calc_01a
