Pergunta

Eu sou novo para LaTeX e devo dizer que estou realmente lutando com ele. Eu descobri o comando \ newcommand que é tipo como uma função / método em linguagens de programação regulares. Você pode dar argumentos e tudo.

Eu estava pensando, porém, pode de alguma maneira eu iterate em LaTeX? Basicamente, o que eu gostaria de fazer é criar uma tabela com N + 1 colunas, onde a primeira linha contém apenas uma célula em branco e, em seguida, os números 1, 2, ..., N nas outras colunas. Eu só quero dar-N como um argumento para esta 'função' (newcommand).

Aqui está um exemplo de algo que pode parecer que eu estou procurando (embora, obviamente, isso não vai funcionar):

\newcommand{\mytable}[2]{  
\begin{tabular}{l|*{#1}{c|}} % table with first argument+1 columns  
  for(int i = 1; i <= #1; i++) "& i" % 'output' numbers in different columns  
  \\\hline  
  letters & #2 % second argument should contain actual content for row  
  \\\hline  
\end{tabular}  
}

chamá-lo com:

\mytable{3}{a & b & c}

saída deve ser:

        | 1 | 2 | 3 |
--------+---+---+---+
letters | a | b | c |
--------+---+---+---+

Alguém sabe se algo como isso é possível?

Obrigado!

Foi útil?

Solução

Tia Google diz sim .

Outras dicas

Basta fazer o seguinte em um novo comando e certifique-se de ifthen pacote de uso.

\begin{tabular}{l|*{10}{c|}}
\newcounter{count}
\whiledo{\value{count}<10}{
\ifthenelse{\value{count}=0}{}{\the\value{count}}
\ifthenelse{\value{count}<9}{&}{\\}
\stepcounter{count}
}
letters&a&b&c&d&e&f&g&h&i\\
\end{tabular}

Você pode usar os \loop ou \repeat tokens. Ou o href="https://ctan.org/pkg/multido" rel="nofollow noreferrer"> pacote multido .

Claro que é possível. Você também pode recorrer. eplain tem iteração macros nele, ver, por exemplo, aqui .

Outra possibilidade (se você é preguiçoso como eu) é perltex

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top