40 lines
622 B
Plaintext
40 lines
622 B
Plaintext
MODULE BellNumbers;
|
|
|
|
FROM STextIO IMPORT
|
|
WriteLn, WriteString;
|
|
FROM SWholeIO IMPORT
|
|
WriteInt;
|
|
|
|
CONST
|
|
MaxN = 14;
|
|
|
|
VAR
|
|
A: ARRAY [0 .. MaxN - 1] OF CARDINAL;
|
|
I, J, N: CARDINAL;
|
|
|
|
PROCEDURE DisplayRow(N, BellNum: CARDINAL);
|
|
BEGIN
|
|
WriteString("B(");
|
|
WriteInt(N, 2);
|
|
WriteString(") = ");
|
|
WriteInt(BellNum, 9);
|
|
WriteLn
|
|
END DisplayRow;
|
|
|
|
BEGIN
|
|
FOR I := 0 TO MaxN - 1 DO
|
|
A[I] := 0
|
|
END;
|
|
N := 0;
|
|
A[0] := 1;
|
|
DisplayRow(N, A[0]);
|
|
WHILE N < MaxN DO
|
|
A[N] := A[0];
|
|
FOR J := N TO 1 BY -1 DO
|
|
A[J - 1] := A[J - 1] + A[J]
|
|
END;
|
|
N := N + 1;
|
|
DisplayRow(N, A[0])
|
|
END
|
|
END BellNumbers.
|