\documentclass{article} \usepackage{templatex} %\def\pgfsysdriver{pgfsys-dvipdfm.def} % for dvipdfmx \usepackage{tikz} \begin{document} \begin{templatex} \begin{tikzpicture} <? local N = 10 local curr, prev ?> \node (F0) {1}; \node [right of=F0] (G0) {1}; <? curr = 1; prev = 1 for i = 1, N - 1 do t = curr; curr = curr + prev; prev = t ?> \node [below of=F<?= i-1 ?>] (F<?= i ?>) {<?= curr ?>}; \node [below of=G<?= i-1 ?>] (G<?= i ?>) {<?= prev ?>}; \draw [->] (F<?= i-1 ?>) -- (F<?= i ?>); \draw [->] (F<?= i-1 ?>) -- (G<?= i ?>); \draw [->] (G<?= i-1 ?>) -- (F<?= i ?>); <? end ?> \end{tikzpicture} \end{templatex} \end{document}
……めでたく終了、と言いたいところだが、実はごまかしている部分がある。
元々のソースは、「図を出力するマクロ」を定義していて繰り返しの回数を引数で指定する。対して、ここでは直接描画を実行していて、繰り返し回数(N)が固定になっている。