W cyklu przykłady rozwiązań, zamieszczamy algorytm w języku javascript do obliczania krokowo rozwinięcia dziesiętnego liczby PI.

function bi(n, b) { return new jsbn.BigInteger(n.toString(), b ? b : 10); };
var one=bi(1), two=bi(2), three=bi(3), four=bi(4), seven=bi(7), ten=bi(10);
function calcPi() {
    var q=bi(1), r=bi(0), t=bi(1), k=bi(1), n=bi(3), l=bi(3);
    var digit=0, firstrun=1;
    var p=document.getElementById('pi');
    function output(s) { p.appendChild(document.createTextNode(s));}
    function continueCalcPi(q, r, t, k, n, l) {
        while (true) {
            if (q.multiply(four).add(r).subtract(t).compareTo(n.multiply(t)) < 0) {
                output(n.toString());
                if (digit==0 && firstrun==1) { output('.'); firstrun=0; };
                digit = (digit+1) % 256;
                var nr = (r.subtract(n.multiply(t))).multiply(ten);
                n  = (q.multiply(three).add(r)).multiply(ten).divide(t).subtract(n.multiply(ten));
                q  = q.multiply(ten);
                r  = nr;
                if (digit%8==0) {
                    output(' ');
                    return setTimeout(function() { continueCalcPi(q, r, t, k, n, l); }, 1);
                };
            } else {
                var nr = q.shiftLeft(1).add(r).multiply(l);
                var nn = q.multiply(k).multiply(seven).add(two).add(r.multiply(l)).divide(t.multiply(l));
                q = q.multiply(k);
                t = t.multiply(l);
                l = l.add(two);
                k = k.add(one);
                n  = nn;
                r  = nr;
            }
        }
    }
    continueCalcPi(q, r, t, k, n, l);
}
calcPi();

Tutaj można zobaczyć przykładową implementację tego algorytmu.