33 lines
681 B
Text
33 lines
681 B
Text
function factorial(n)
|
|
if n = 0 then return 1
|
|
return n * factorial(n - 1)
|
|
end function
|
|
|
|
function catalan1(n)
|
|
prod = 1
|
|
for i = n + 2 to 2 * n
|
|
prod *= i
|
|
next i
|
|
return int(prod / factorial(n))
|
|
end function
|
|
|
|
function catalan2(n)
|
|
if n = 0 then return 1
|
|
sum = 0
|
|
for i = 0 to n - 1
|
|
sum += catalan2(i) * catalan2(n - 1 - i)
|
|
next i
|
|
return sum
|
|
end function
|
|
|
|
function catalan3(n)
|
|
if n = 0 then return 1
|
|
return catalan3(n - 1) * 2 * (2 * n - 1) \ (n + 1)
|
|
end function
|
|
|
|
print "n", "First", "Second", "Third"
|
|
print "-", "-----", "------", "-----"
|
|
print
|
|
for i = 0 to 15
|
|
print i, catalan1(i), catalan2(i), catalan3(i)
|
|
next i
|