/* 1999-2003, Rony G. Flatscher, Wirtschaftsuniversitaet Wien, Austria, Europe
   A *possible* solution to excercise: 3+4 (3)
*/

IF ARG(1) <> "" THEN            /* non-empty argument?                  */
DO
   PARSE ARG Celsius            /* retrieve the Celsius value           */
   SAY FORMAT(Celsius, 3, 0) "øC" "=" FORMAT( Fahrenheit(Celsius), 3, 0) "øF"
END
ELSE                            /* either no argument or blank string   */
DO Celsius=0 TO 100 BY 5
   SAY FORMAT(Celsius, 3, 0) "øC" "=" FORMAT( Fahrenheit(Celsius), 3, 0) "øF"
END

::ROUTINE Fahrenheit
   RETURN ARG(1)*(9/5)+32       /* use argument directly, calculate, return result */