HP 49g+ User Manual
Page 703
Page 21-58
The START…STEP construct
The general form of this statement is:
start_value end_value START program_statements increment
NEXT
The start_value, end_value, and increment of the loop index can be
positive or negative quantities. For increment > 0, execution occurs as
long as the index is less than or equal to end_value. For increment < 0,
execution occurs as long as the index is greater than or equal to end_value.
Example – generating a list of values
Suppose that you want to generate a list of values of x from x = 0.5 to x =
6.5 in increments of 0.5. You can write the following program:
«
→ xs xe dx
«
xs DUP xe START DUP dx + dx STEP DROP xe
xs – dx / ABS 1 +
→LIST » »
and store it in variable
@GLIST.
In this program , xs = starting value of the loop, xe = ending value of the loop,
dx = increment value for loop. The program places values of xs, xs+dx,
xs+2
⋅dx, xs+3⋅dx, … in the stack. Then, it calculates the number of elements
generated using the piece of code: xe xs – dx / ABS 1. +
Finally, the program puts together a list with the elements placed in the stack.
• Check out that the program call 0.5 ` 2.5 ` 0.5 ` @GLIST
produces the list {0.5 1. 1.5 2. 2.5}.
• To see step-by-step operation use the program DBUG for a short list, for
example:
J1 # 1.5 # 0.5 `
Enter parameters 1 1.5 0.5
[ ‘ ]
@GLIST `
Enter the program name in level 1
„°LL @)@RUN@ @@DBG@
Start the debugger.