Man kann den im zweiten Beispiel [meiner `lualatex`-Anwort](#14532) umgesetzten effizienteren Algorithmus natürlich auch direkt in LaTeX umsetzen. umsetzen, also **`pdflatex` oder `xelatex` verwenden**. Dabei bietet es sich an die e-TeX-Erweiterung `\numexpr` zu verwenden, da LaTeX bei allen aktuellen Distributionen bereits seit Jahren e-TeX verwendet. Dann ergibt sich beispielsweise:
\documentclass[margin=2mm]{standalone}
%\documentclass{article}
\usepackage{amsmath}
\usepackage{tikz}
% \usetikzlibrary{positioning}
\makeatletter
\newcommand{\binomial}[2]{%
\ifnum #2=0
% \typeout{binomial(#1,#2)=1}%
1%
\else
\ifnum \numexpr 2*#2\relax>#1
\binomial{#1}{\the\numexpr #1-#2\relax}%
\else
\@tempcnta=\numexpr #1 - #2 + 1\relax
\@tempcntb=1
\@whilenum \@tempcntb<#2 \do {%
\advance\@tempcntb by 1
\@tempcnta=\numexpr \@tempcnta * (#1 - #2 + \@tempcntb)\relax
\@tempcnta=\numexpr \@tempcnta / \@tempcntb
}%
% \typeout{binomial(#1,#2)=\the\@tempcnta}%
\the\@tempcnta
\fi
\fi
}
\begin{document}
\pagecolor{yellow!65}
\begin{tikzpicture}[%scale=2.0,transform shape,
font=\footnotesize,
]
% Binomialkoeffizienten
\foreach \n in {0,...,20} {%-----------------------------------------
\foreach \k in {0,...,\n} {%
% Ausführliches Ergebnis
\node[align=center](\n) at (2*\k-1*\n,-\n) {
$\binom{\n}{\k} = \binomial{\n}{\k}$
};
%
% Kurzes Ergebnis
% \node(\n) at (\k-\n/2,-\n) {$\binomial{\n}{\k}$};
%
}%%
}%-----------------------------------------
\node[above of = 0]{\underline{Binomialkoeffizienten $\dbinom{n}{k}$}};
\end{tikzpicture}
\end{document}
![TeX-Lösung bis 20][1]
Wer die ganzen Low-Level-(La)TeX-Bedingungen, -Scheifen und LaTeX-internen TeX-Zähler nicht mag, kann dafür auch das Paket [`ifthen`](http://www.ctan.org/pkg/ifthen) und selbst definierte LaTeX-Zähler verwenden:
\documentclass[margin=2mm]{standalone}
%\documentclass{article}
\usepackage{amsmath}
\usepackage{tikz}
% \usetikzlibrary{positioning}
\usepackage{ifthen}
\newcounter{binomiali}% Schleifenzähler
\newcounter{binomialresult}% Zwischen- und Endergebnis
\newcommand{\binomial}[2]{%
\ifthenelse{#2=0}{%
% \typeout{binomial(#1,#2)=1}%
1%
}{%
\ifthenelse{\numexpr 2*#2\relax>#1}{%
\binomial{#1}{\the\numexpr #1-#2\relax}%
}{%
\setcounter{binomialresult}{\numexpr #1 - #2 + 1}%
\setcounter{binomiali}{1}%
\whiledo{\value{binomiali}<#2}{%
\stepcounter{binomiali}%
\setcounter{binomialresult}{%
\numexpr \value{binomialresult} * (#1 - #2 + \value{binomiali})%
}
\setcounter{binomialresult}{%
\numexpr \value{binomialresult}/\value{binomiali}%
}
}%
% \typeout{binomial(#1,#2)=\thebinomialresult}%
\thebinomialresult
}%
}%
}
\begin{document}
\pagecolor{yellow!65}
\begin{tikzpicture}[%scale=2.0,transform shape,
font=\footnotesize,
]
% Binomialkoeffizienten
\foreach \n in {0,...,10} {%-----------------------------------------
\foreach \k in {0,...,\n} {%
% Ausführliches Ergebnis
\node[align=center](\n) at (2*\k-1*\n,-\n) {
$\binom{\n}{\k} = \binomial{\n}{\k}$
};
%
% Kurzes Ergebnis
% \node(\n) at (\k-\n/2,-\n) {$\binomial{\n}{\k}$};
%
}%%
}%-----------------------------------------
\node[above of = 0]{\underline{Binomialkoeffizienten $\dbinom{n}{k}$}};
\end{tikzpicture}
\end{document}
Wie zu sehen ist, kommt man mit diesem Algorithmus deutlich weiter als bis n=7. Bei 29 ist mit dieser Lösung allerdings Schluss, während die `lualatex`-Lösung [`lualatex`-Lösung](#14532) auch noch weit größere Werte für n verarbeiten kann. Für n>29 könnte man eventuell das Paket [`xint`](http://www.ctan.org/pkg/xint) für die Berechnung des Ergebnisses verwenden. Dessen Anwendung ist allerdings nicht ganz so einfach. Da bereits für n=20 die Darstellung problematisch wird und ich mit mich mit `xint` nicht wirklich auskenne, werde ich auf die Vorführung einer entsprechenden Lösung verzichten.
Ich selbst empfehle übrigens eher die [`lualatex`-Lösung](#14532). Diverse Möglichkeiten von `tikz`, die in der pgf-Anleitung, angegeben sind, setzen ohnehin `lualatex` voraus. Darüber hinaus, bestehen bei Verwendung von `lualatex` keine statischen Speicherbegrenzung, die bei `tikz`/`pgf`-Grafiken mit sehr vielen Punkten bei Verwendung von `pdflatex` häufiger zu einem Problem werden.
[1]: http://texwelt.de/wissen/upfiles/test7_4.png