25 lines
516 B
Plaintext
25 lines
516 B
Plaintext
&a; {set mode to 0-indexed matrices}
|
|
Func Pasmat( n, t ) =
|
|
;{create a Pascal matrix of size n by n}
|
|
;{t=0 -> upper triangular, 1 -> lower triangular,2->symmetric}
|
|
Array m[n, n]; {result is stored in array m}
|
|
if t = 0 then
|
|
[m]:=[<i=0,n-1><j=0,n-1> Bin(j,i) ];
|
|
fi;
|
|
if t = 1 then
|
|
[m]:=[<i=0,n-1><j=0,n-1> Bin(i,j) ];
|
|
fi;
|
|
if t = 2 then
|
|
[m]:=[<i=0,n-1><j=0,n-1> Bin(i+j,i) ];
|
|
fi;
|
|
.;
|
|
|
|
Pasmat(5, 0);
|
|
!!([m);
|
|
!;
|
|
Pasmat(5, 1);
|
|
!!([m);
|
|
!;
|
|
Pasmat(5, 2);
|
|
!!([m);
|