Annotation of 43BSDReno/pgrm/pascal/tstpx/src/powersoftwo.p, revision 1.1.1.1

1.1       root        1: program powersoftwo(output);
                      2: const m = 30; n = 90;  { m >= n*log(2) }
                      3: var exp,i,j,l: integer;
                      4:     c,r,t: integer;
                      5:     d: array [0..m] of integer;  {positive powers}
                      6:     f: array [1..n] of integer;  {negative powers}
                      7: begin l := 0; r := 1; d[0] := 1;
                      8:   writeln(wallclock);
                      9:   for exp := 1 to n do
                     10:   begin {compute and print 2**exp }  c := 0;
                     11:     for i := 0 to l do
                     12:     begin t := 2*d[i] + c;
                     13:       if t >= 10 then
                     14:         begin d[i] := t-10; c := 1;
                     15:         end
                     16:       else
                     17:         begin d[i] := t; c:= 0;
                     18:         end
                     19:     end ;
                     20:     if c > 0 then
                     21:       begin l := l+1; d[l] := 1
                     22:       end ;
                     23:     for i := m downto l do write(' ');
                     24:     for i := l downto 0 do write(d[i]:1);
                     25:     write(exp:5, '  .');
                     26:     {compute and print 2**(-exp) }
                     27:     for j := 1 to exp-1 do
                     28:     begin r := 10*r + f[j];
                     29:       f[j] := r div 2; r := r - 2*f[j]; write(f[j]:1)
                     30:     end ;
                     31:     f[exp] := 5; writeln('5'); r := 0
                     32:   end ;
                     33:   writeln(wallclock)
                     34: end .

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.