# Using Subroutines - HP 48gII Advanced User's Reference Manual

Graphing calculator.

To change the current flag states:
1. Enter the flag-state argument- see below
2. Execute STOF (!°L %MODES% %FLAG% L%STOF% ).
STOF sets the current states of flags based on the flag-state argument:
#n
Changes the states of only the system flags.
s
{ #n
#n
#n
s-lower
u-lower
s-upper
Example:
The program PRESERVE on page 2-6 uses RCLF and STOF.

## Using Subroutines

Because a program is itself an object, it can be used in another program as a subroutine. When program B is
used by program A, program A calls program B, and program B is a subroutine in program A.
Example:
The program TORSA calculates the surface area of a torus of inner radius a and outer radius b.
TORSA is used as a subroutine in a second program TORSV, which calculates the volume of a torus.
The surface area and volume are calculated by
2
2
2
(The quantity
b
a
Here are the stack diagram and program listing for TORSA.
Program:
«
 a b
'‡^2*(b^2-a^2)'
NUM
"
`
O TORSA K
1-28 RPL Programming
#n
}Changes the states of the system and user flags.
u-upper
2
2
A
=
b
in the second equation is the surface area of a torus calculated by TORSA.)
Level 2
Level 1
a
b
1
2
2
2
2
a
V
=
-- -
b
a
b a
4
"
"
surface area
Creates local variables a and b.
Calculates the surface area.
Converts algebraic to a number.
Puts the program on the stack.
Stores the program in TORSA.
Level 1