BSD 1 development
[unix-history] / puman / primeout2
UNIX Pascal PXP -- Version 1.0 (September 10, 1977)
Sat Sep 10 13:19 1977 primes.p
Profiled Sat Sep 10 13:19 1977
\0\0\0\0\01\0\0\0\0\0\0\0\01.\l'\w`\0\0\0\0`u-\w`.`u\&\(rh'|program primes(output);
\0\0\0\0\02\0\0\0\0\0\0\0\0\0\0\0\0\0|const
\0\0\0\0\02\0\0\0\0\0\0\0\0\0\0\0\0\0| n = 50;
\0\0\0\0\02\0\0\0\0\0\0\0\0\0\0\0\0\0| n1 = 7; (*n1 = sqrt(n)*)
\0\0\0\0\03\0\0\0\0\0\0\0\0\0\0\0\0\0|var
\0\0\0\0\03\0\0\0\0\0\0\0\0\0\0\0\0\0| i, k, x, inc, lim, square, l: integer;
\0\0\0\0\04\0\0\0\0\0\0\0\0\0\0\0\0\0| prim: boolean;
\0\0\0\0\05\0\0\0\0\0\0\0\0\0\0\0\0\0| p, v: array [1..n1] of integer;
\0\0\0\0\06\0\0\0\0\0\0\0\0\0\0\0\0\0|begin
\0\0\0\0\07\0\0\0\0\0\0\0\0\0\0\0\0\0| write(2: 6, 3: 6);
\0\0\0\0\07\0\0\0\0\0\0\0\0\0\0\0\0\0| l := 2;
\0\0\0\0\08\0\0\0\0\0\0\0\0\0\0\0\0\0| x := 1;
\0\0\0\0\08\0\0\0\0\0\0\0\0\0\0\0\0\0| inc := 4;
\0\0\0\0\08\0\0\0\0\0\0\0\0\0\0\0\0\0| lim := 1;
\0\0\0\0\08\0\0\0\0\0\0\0\0\0\0\0\0\0| square := 9;
\0\0\0\0\09\0\0\0\0\0\0\0\0\0\0\0\0\0| for i := 3 to n do begin (*find next prime*)
\0\0\0\0\09\0\0\0\0\0\0\0\0\0\0\048.\l'\w`\0\0\0\0`u-\w`.`u\&\(rh'| repeat
\0\0\0\011\0\0\0\0\0\0\0\0\0\0\0\0\0\0\076.\l'\w`\0\0\0\0`u-\w`.`u\&\(rh'| x := x + inc;
\0\0\0\011\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0| inc := 6 - inc;
\0\0\0\012\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0| if square <= x then begin
\0\0\0\013\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\05.\l'\w`\0\0\0\0`u-\w`.`u\&\(rh'| lim := lim + 1;
\0\0\0\014\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0| v[lim] := square;
\0\0\0\014\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0| square := sqr(p[lim + 1])
\0\0\0\014\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0| end;
\0\0\0\016\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0| k := 2;
\0\0\0\016\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0| prim := true;
\0\0\0\017\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0| while prim and (k < lim) do begin
\0\0\0\018\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0157.\l'\w`\0\0\0\0`u-\w`.`u\&\(rh'| k := k + 1;
\0\0\0\019\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0| if v[k] < x then
\0\0\0\019\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\042.\l'\w`\0\0\0\0`u-\w`.`u\&\(rh'| v[k] := v[k] + 2 * p[k];
\0\0\0\020\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0| prim := x <> v[k]
\0\0\0\020\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0| end
\0\0\0\020\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0|until prim;
\0\0\0\023\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0| if i <= n1 then
\0\0\0\023\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\05.\l'\w`\0\0\0\0`u-\w`.`u\&\(rh'| p[i] := x;
\0\0\0\024\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0| write(x: 6);
\0\0\0\024\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0| l := l + 1;
\0\0\0\025\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0| if l = 10 then begin
\0\0\0\026\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\05.\l'\w`\0\0\0\0`u-\w`.`u\&\(rh'| writeln;
\0\0\0\026\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0| l := 0
\0\0\0\026\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0| end
\0\0\0\026\0\0\0\0\0\0\0\0\0\0\0\0\0| end;
\0\0\0\029\0\0\0\0\0\0\0\0\0\0\0\0\0| writeln
\0\0\0\029\0\0\0\0\0\0\0\0\0\0\0\0\0|end.