SUBROUTINE subroutine-name (arg1, arg2, ..., argn) IMPLICIT NONE [specification part] [execution part] [subprogram part] END SUBROUTINE subroutine-name
Here are some elaborations of the above syntax:
SUBROUTINE Factorial(n, Answer)
SUBROUTINE TestSomething(a, b, c, Error)
where arg1, arg2, ..., argn are left out.SUBROUTINE subroutine-name () IMPLICIT NONE [specification part] [execution part] [subprogram part] END SUBROUTINE subroutine-name
Unlike functions, the pair of parenthesis can be removed:
SUBROUTINE subroutine-name IMPLICIT NONE [specification part] [execution part] [subprogram part] END SUBROUTINE subroutine-name