26 lines
446 B
Text
26 lines
446 B
Text
(* Catalan numbers *)
|
|
|
|
block
|
|
const
|
|
max_n = 13; (* 13 with 32-bit signed integer; 10 for 16-bit signed integer *)
|
|
var
|
|
c, n, i: integer;
|
|
begin
|
|
n := 0;
|
|
c := 1;
|
|
writeln(" N C");
|
|
writeln(n: 2, c: 8);
|
|
while n < max_n
|
|
do
|
|
n := n + 1;
|
|
i := 0;
|
|
while c > 0
|
|
do
|
|
c := c - (n + 1);
|
|
i := i + 1
|
|
od;
|
|
c := 2 * (2 * n - 1) * c div (n + 1);
|
|
c := c + 2 * i * (2 * n - 1);
|
|
writeln(n: 2, c: 8);
|
|
od;
|
|
end;
|