Reference Guide

1-20 RPL Programming
The FOR  NEXT Structure
The syntax for this structure is
«
start finish
FOR
counter loop-clause
NEXT
»
FOR … NEXT executes the loop-clause program segment one time for each number in the range start to finish,
using local variable counter as the loop counter. You can use this variable in the loop-clause. The loop-clause is
always executed at least once.
Syntax Flowchart
Start
finish
FOR
loop-clause
NEXT
1:Start
2:finish
counter=start
Store finish
Body of loop
counter = counter + 1
Is
counter finish?
yes
no
FOR  NEXT Structure
FOR takes start and finish from the stack as the beginning and ending values for the loop counter, then creates the
local variable counter as a loop counter. Then the loop-clause is executed — counter can appear within the loop-clause.
NEXT increments counter by one, and then tests whether its value is less than or equal to finish. If so, the loop-clause is
repeated (with the new value of counter) — otherwise, execution resumes following NEXT. When the loop is exited,
counter is purged.
To enter FOR  NEXT in a program:
Press
%BRCH%
!
%FOR%
.
Example:
The following program places the squares of the integers 1 through 5 on the stack:
«
1 5 FOR j j SQ NEXT
»
Example:
The following program takes the value x from the stack and computes the integer powers i of x. For
example, when x =12 and start and finish are 3 and 5 respectively, the program returns 12
3
, 12
4
and 12
5
. It requires as
inputs start and finish in level 3 and 2, and x in level 1. (
→ x
removes x from the stack, leaving start and finish there
as arguments for FOR.)
«
→ x « FOR n 'x^n' EVAL NEXT »
»