Functions have data types. Why is it that subprograms do not?
Why don't functions require global variables for returning values the way subprograms do?
Subprograms and functions are both used to break down programs into understandable modules with specific tasks. Can you always use either one or are there circumstances in which you must use one or the other?
Which does the better job of isolating a module from the rest of the program, a subroutine or a function? Explain your answer.
Hint: Could you have written the card dealing program using a function instead of a subprogram? If you had done so, would it have done a better job of isolating the Range module?