This question is about named constants. a) Why are named constants useful? Answer: They reduce mistyping errors, they makes it clearer which constant is being used and they make it easier to modify the program later. b) What is the difference between REAL, PARAMETER :: pi = 22.0/3.0 and REAL :: pi = 22.0/3.0 Answer: The first defines a named constant pi with value 22.0/3.0, the second declares a variable named pi initialised to 22.0/3.0. c) Is the following program fragment allowed? INTEGER, PARAMETER :: ZERO = 0 ZERO = 1 Answer: No, because ZERO is a constant and cannot be changed. d) Is the following program fragment allowed? INTEGER :: ONE = 1 ONE = 0 Answer: Yes, since ONE is a variable. It can have any value.