Fortran - haz while Loop Construct

Repite una declaración o un grupo de declaraciones mientras una condición determinada es verdadera. Prueba la condición antes de ejecutar el cuerpo del bucle.

Sintaxis

do while (logical expr) 
   statements
end do

Diagrama de flujo

Ejemplo

program factorial  
implicit none  

   ! define variables
   integer :: nfact = 1   
   integer :: n = 1 
   
   ! compute factorials   
   do while (n <= 10)       
      nfact = nfact * n 
      n = n + 1
      print*,  n, " ", nfact   
   end do 
end program factorial

Cuando el código anterior se compila y ejecuta, produce el siguiente resultado:

2             1
3             2
4             6
5            24
6           120
7           720
8          5040
9         40320
10        362880
11       3628800