do not forget \usepackage{perltex} so the whole looks like:
\documentclass{article} \usepackage{perltex} \perlnewcommand{\pascalMatrix}[1] { my $tabularRows = ""; my @row = (1); my $cols = ($_[0] * 2) + 1; #add: final number of columns my $filler = "{ }"; #add: used to mark an empty entry for (my $r = 0; $r <= $_[0]; $r++) { # Output the current row ### begin of modification # insert a filler between each item (sprintf is for LaTeX cosmeti +cs) my @fmt = map { (sprintf("%3d",$_), $filler) } @row; pop @fmt; # pre-/append a filler until final number of columns reached unshift(@fmt,$filler), push(@fmt,$filler) while (@fmt < $cols); $tabularRows .= join (" & ", @fmt) ." \\\\\n"; ### end of modification # Generate the next row my @nextRow = (1); for (my $c = 1; $c <= $r; $c++) { push @nextRow, @row[$c - 1] + @row[$c]; } push @nextRow, 1; @row = @nextRow; } return "\\begin{tabular}{*{$cols}{c}c}\n" . # changed! $tabularRows . "\\end{tabular}\n"; } \begin{document} \pascalMatrix{10} \end{document}
In reply to Re^2: Equilateral Pascal's Triangle in perltex
by Anonymous Monk
in thread Equilateral Pascal's Triangle in perltex
by Coach
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |