19 lines
485 B
Text
19 lines
485 B
Text
# n is input
|
|
def pascal_upper:
|
|
. as $n
|
|
| matrix($n; $n; 0)
|
|
| .[0] = [range(0; $n) | 1 ]
|
|
| reduce range(1; $n) as $i
|
|
(.; reduce range($i; $n) as $j
|
|
(.; .[$i][$j] = .[$i-1][$j-1] + .[$i][$j-1]) ) ;
|
|
|
|
def pascal_lower:
|
|
pascal_upper | transpose ;
|
|
|
|
# n is input
|
|
def pascal_symmetric:
|
|
. as $n
|
|
| matrix($n; $n; 1)
|
|
| reduce range(1; $n) as $i
|
|
(.; reduce range(1; $n) as $j
|
|
(.; .[$i][$j] = .[$i-1][$j] + .[$i][$j-1]) ) ;
|