6

私は LaTeX に不慣れで、本当に苦労していると言わざるを得ません。通常のプログラミング言語の関数/メソッドのようなものである \newcommand コマンドを発見しました。引数とすべてを与えることができます。

私は疑問に思っていましたが、LaTeXでどういうわけか反復できますか? 基本的に、私がやりたいことは、最初の行に空白のセルが含まれ、他の列に数字1、2、...、Nが含まれるN + 1列のテーブルを作成することです。この「関数」(newcommand) の引数として N を指定したいだけです。

これは、私が探しているもののように見えるものの例です (ただし、明らかにこれは機能しません)。

\newcommand{\mytable}[2]{  
\begin{tabular}{l|*{#1}{c|}} % 第 1 引数 + 1 列のテーブル  
  for(int i = 1; i <= #1; i++) "& i" % 'output' 異なる列の数値  
  \\\hline  
  文字 & #2 % 2 番目の引数には、行の実際のコンテンツを含める必要があります  
  \\\hline  
\end{表}  
}

次のように呼び出します。

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

出力は次のようになります。

        | | 1 | 2 | 3 |
--------+---+---+---+
手紙 | | | b | c |
--------+---+---+---+

このようなことが可能かどうか誰にもわかりますか?

ありがとう!

4

5 に答える 5

4

以下を新しいコマンドにして、必ず package を使用してifthenください。

\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}
于 2008-12-31T03:03:51.720 に答える
3

グーグルおばさんはイエスと言います

于 2008-12-31T02:07:24.410 に答える
3

\loopまたは\repeatトークンを使用できます。またはmultidoパッケージ。

于 2008-12-31T02:11:44.027 に答える
2

別の可能性 (私のように怠惰な場合) はperltex です

于 2009-04-20T04:18:00.643 に答える
2

確かにそれは可能です。繰り返すこともできます。eplain には反復マクロが含まれています。たとえば、hereを参照してください。

于 2008-12-31T02:08:13.317 に答える