HP (Hewlett-Packard) HP 33s Calculator User Manual


 
Programming Techniques
13–3
File name 33s-English-Manual-040130-Publication(Edition 2).doc Page : 388
Printed Date : 2004/1/30 Size : 13.7 x 21.2 cm
Nested Subroutines
A subroutine can call another subroutine, and that subroutine can call yet another
subroutine. This "nesting" of subroutines — the calling of a subroutine within
another subroutine — is limited to a stack of subroutines seven levels deep (not
counting the topmost program level). The operation of nested subroutines is as
shown below:
MAIN program
(top level)
End of program
Attempting to execute a subroutine nested more than seven levels deep causes an


error.
Example: A Nested Subroutine.
The following subroutine, labeled S, calculates the value of the expression
2222
dcba +++
as part of a larger calculation in a larger program. The subroutine calls upon
another subroutine (a nested subroutine), labeled Q, to do the repetitive squaring
and addition. This saves memory by keeping the program shorter than it would be
without the subroutine.