Catalan numbers/Pascal's triangle: Difference between revisions
Content added Content deleted
m (formatting) |
(→Tcl: Added implementation) |
||
Line 36: | Line 36: | ||
{{out}} |
{{out}} |
||
<pre>1 2 5 14 42 132 429 1430 4862 16796 58786 208012 742900 2674440 9694845 </pre> |
<pre>1 2 5 14 42 132 429 1430 4862 16796 58786 208012 742900 2674440 9694845 </pre> |
||
=={{header|Tcl}}== |
|||
<lang tcl>proc catalan n { |
|||
set result {} |
|||
array set t {0 0 1 1} |
|||
for {set i 1} {[set k $i] <= $n} {incr i} { |
|||
for {set j $i} {$j > 1} {} {incr t($j) $t([incr j -1])} |
|||
set t([incr k]) $t($i) |
|||
for {set j $k} {$j > 1} {} {incr t($j) $t([incr j -1])} |
|||
lappend result [expr {$t($k) - $t($i)}] |
|||
} |
|||
return $result |
|||
} |
|||
puts [catalan 15]</lang> |
|||
{{out}} |
|||
<pre>1 2 5 14 42 132 429 1430 4862 16796 58786 208012 742900 2674440 9694845</pre> |