Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- \documentclass{article}
- \usepackage{tikz}
- \makeatletter
- \newcommand\binomialCoefficient[2]{%
- % Store values
- \c@pgf@counta=#1% n
- \c@pgf@countb=#2% k
- %
- % Take advantage of symmetry if k > n - k
- \c@pgf@countc=\c@pgf@counta%
- \advance\c@pgf@countc by-\c@pgf@countb%
- \ifnum\c@pgf@countb>\c@pgf@countc%
- \c@pgf@countb=\c@pgf@countc%
- \fi%
- %
- % Recursively compute the coefficients
- \c@pgf@countc=1% will hold the result
- \c@pgf@countd=0% counter
- \pgfmathloop% c -> c*(n-i)/(i+1) for i=0,...,k-1
- \ifnum\c@pgf@countd<\c@pgf@countb%
- \multiply\c@pgf@countc by\c@pgf@counta%
- \advance\c@pgf@counta by-1%
- \advance\c@pgf@countd by1%
- \divide\c@pgf@countc by\c@pgf@countd%
- \repeatpgfmathloop%
- \xdef\theresult{\the\c@pgf@countc}%
- }
- \makeatother
- \begin{document}
- \begin{tikzpicture}
- \foreach \n in {0,...,15} {
- \foreach \k in {0,...,\n} {
- \binomialCoefficient{\n}{\k}%
- \ifodd\theresult
- \node [fill=green] at (\k-\n/2,-\n){$\theresult$};
- \else
- \node at (\k-\n/2,-\n) {$\theresult$};
- \fi
- }
- }
- \end{tikzpicture}
- \end{document}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement