EnableExplicit Define.i x=5, I, J Macro Print_Pascal_matrix(typ) PrintN(typ) For I=1 To x For J=1 To x : Print(RSet(Str(p(I,J)),3," ")+Space(3)) : Next PrintN("") Next Print(~"\n\n") EndMacro Procedure Pascal_sym(n.i,Array p.i(2)) Define.i I,J p(1,0)=1 For I=1 To n For J=1 To n : p(I,J)=p(I-1,J)+p(I,J-1) : Next Next EndProcedure Procedure Pascal_upp(n.i,Array p.i(2)) Define.i I,J p(0,0)=1 For I=1 To n For J=1 To n : p(I,J)=p(I-1,J-1)+p(I,J-1) : Next Next EndProcedure Procedure Pascal_low(n.i,Array p.i(2)) Define.i I,J Pascal_upp(n,p()) Dim p2.i(n,n) CopyArray(p(),p2()) For I=1 To n For J=1 To n : Swap p(J,I),p2(I,J) : Next Next EndProcedure OpenConsole() Dim p.i(x,x) Pascal_upp(x,p()) Print_Pascal_matrix("Upper:") Dim p.i(x,x) Pascal_low(x,p()) Print_Pascal_matrix("Lower:") Dim p.i(x,x) Pascal_sym(x,p()) Print_Pascal_matrix("Symmetric:") Input() End