Subroutines are usually small in size, which means they are much easier to write, test and debug. They are also easy for someone else to understand. As they are written outside of the main program, ...
A procedure is run by calling it. To call it, a programmer uses the procedure name and includes any parameters (values) that the procedure needs, for example: SUBROUTINE f_TO_c(temperature_in_f) ...