Bill,
I don't think that I posted anything about using SIGMA, just a bubble sort routine for the 12C. But here's something that I wrote using SIGMA in the HP200LX solver. It calculates pi to any number of decimal places using the 1-2-3 interface to store the partial and final results. To use it you need to have an LX (100, 200 and I think this will work on a 95). The STOCELL and RCLCELL functions just store and recall from the specified cell in 1-2-3. To use this, make the following an equation in the solver, start 1-2-3 and create a range called OUT. The number of rows in the range determines the number of digits of pi calculated -- 10 digits per row. The number of columns in the range is unimportant.
{!calculate Pi to n places into OUT in 1-2-3!
calc_pi=
l(n,10000000000)*0+ !set the number of digits/cell!
sigma(x,1,length(out),1, !zero the output range!
stocell(0,out,x,1)+stocell(0,out,x,2) ) +
stocell(.28*g(n),out,1,1) + !initial value for 1st term!
SIGMA(x,length(out),1+l(c,0),-1, !add to result!
STOCELL(l(t,g(c)+RCLCELL(out,x,1)+RCLCELL(out,x,2))-
l(c,idiv( g(t),g(n)))*g(n),out,x,2)) +
sigma(i,2,2*log(g(n))*length(out)/log(50),2, !set up 1st term
loop!
SIGMA(x,l(c,0)+LENGTH(out),1, -1, !multiply by i!
STOCELL(mod((g(c)+i*RCLCELL(out,x,1)),g(n))+
0*l(c,idiv((g(c)+i*RCLCELL(out,x,1)),g(n))),
out,x,1)) +
SIGMA(x,1+l(c,0),LENGTH(out),1, !divide by 50*(i+1)!
STOCELL(idiv((g(c)*g(n)+RCLCELL(out,x,1)),(i+1)*50) +
0*l(c,mod((g(c)*g(n)+RCLCELL(out,x,1)),
(i+1)*50)),out,x,1)) +
SIGMA(x,Length(out),1+l(c,0),-1, !add to result!
STOCELL(l(t,g(c)+RCLCELL(out, x,1)+RCLCELL(out,x,2)) -
l(c,idiv(g(t),g(n)))*g(n) ,out, x,2))) +
stocell(.030336*g(n),out,1,1) + !initial value for 2nd term!
SIGMA(x,length(out),1+l(c,0),-1, !add to result!
STOCELL(l(t,g(c)+RCLCELL(out,x,1)+RCLCELL(out,x,2))-
l(c,idiv( g(t),g(n)) ) * g( n) ,out,x,2)) +
SIGMA(i,2,2*log(g(n))*length(out)/log(6250/9),2, !setup 2nd
term loop!
SIGMA(x,l(c,0)+LENGTH(out),1, -1, !multiply by i*9!
STOCELL(mod((g(c)+i*9*RCLCELL(out,x,1)),g(n)) +
0*l( c, idiv((g(c)+i*9*RCLCELL(out,x,1)),
g(n))),out,x,1)) +
SIGMA(x,1+l(c,0),LENGTH(out),1, !divide by 50*(i+1)!
STOCELL(idiv((g(c)*g(n)+RCLCELL(out,x,1)),(i+1)*50) +
0*l(c,mod((g(c)*g(n)+RCLCELL(out,x,1)),
(i+1)*50)),out,x,1)) +
SIGMA(x,1+l(c,0),LENGTH(out),1, !divide by 125!
STOCELL(idiv((g(c)*g(n)+RCLCELL(out,x,1)),125) +
0*l( c,mod((g(c)*g(n)+RCLCELL(out,x,1)),125)),
out, x,1)) +
SIGMA(x,LENGTH(out),1+l(c,0),-1, !add to result!
STOCELL(l(t,g(c)+RCLCELL(out,x,1)+RCLCELL(out,x,2))-
l(c,idiv( g(t),g(n)) ) * g( n) ,out,x,2))
)
}