È possibile annidare i cicli ottenuti con \loop … \repeat?
Ho il seguente codice:
`\documentclass{minimal}\newcounter{tempa}
\newcounter{tempb}
\setcounter{tempa}{0}
\setcounter{tempb}{0}\begin{document}
\loop\ifnum\value{tempa}<7\relax
\thetempa
\loop\ifnum\value{tempb}<4\relax
\thetempb\par
\stepcounter{tempb}
\repeat
\stepcounter{tempa}
\repeat\end{document}`
Mi aspetterei di ottenere il seguente elenco:
`
00
01
02
03
10
11
12
…
62
63`
Sinceramente non capisco… 😥
Eppure dovresti: la macro \loop è delimitata da \repeat, quindi TeX vede qualcosa che non intendi. La soluzione è di mettere il loop interno tra graffe.
C’è un altro errore nel tuo loop: il valore di tempb non viene riportato a zero quando scatta tempa.
`\documentclass{minimal}
\newcounter{tempa}
\newcounter{tempb}[tempa]
\begin{document}
\loop\ifnum\value{tempa}<7
{\loop\ifnum\value{tempb}<4
\thetempa\thetempb\par
\stepcounter{tempb}
\repeat}
\stepcounter{tempa}
\repeat
\end{document}`
Ciao
Enrico