A large commit.
[pdp8.git] / sw / src / pascal / FEXAKT.PS
1 PROGRAM FAKTORIELLE(OUTPUT);
2 CONST NMAX=65;
3 ZMAX=50;
4 VAR A: ARRAY[0..NMAX] OF INTEGER;
5 U,J,K,I: INTEGER;
6 C: INTEGER;
7 BEGIN
8 FOR I:=0 TO NMAX DO A[I]:=0;
9 A[NMAX]:=1;
10 FOR J:=1 TO ZMAX DO
11 BEGIN
12 U:=0;
13 FOR I:=NMAX DOWNTO 0 DO
14 BEGIN
15 C:=A[I]*J;
16 A[I]:=(C+U) MOD 10;
17 U:=(C+U) DIV 10;
18 END;
19 WRITELN;
20 WRITE(J:3," FAK = ");
21 K:=0;
22 WHILE A[K]=0 DO
23 BEGIN
24 K:=K+1;
25 WRITE(" ")
26 END;
27 FOR K:=K TO NMAX DO WRITE(A[K]:1);
28 END
29 END.