pgfマップ要素

pgfマップ要素

pgffor の foreach は要素の「配列」を取ることができます。要素とそこにマップされた値の両方が必要なので、別の配列 (ルックアップ テーブル) を使用してそれらの要素をマップする必要があります。

例えば、私が暗号化をしていて、文字を非標準的な方法で数字にマッピングしているとします。

\foreach \i in {a,b,c,d,e}
{
 \i = \lookup{\i}{\data}
}

データは、次のような内容の連想配列のようなものだと思います

a = 12, b = 16, c = 3, d = 9, e = 19

foreachはそれを印刷します

a = 12
b = 16
c = 3
d = 9
e = 19

私はまた、別の配列を単純に作成して、それらを同時にステップ実行したいのですが、

\foreach \i,\j in {a,b,c,d,e} , {12,16,3,9,19}
{
 \i = \j
}

(ネストされたループのようなものは欲しくないです。それは私がやろうとしていることではないです)

最も簡単な解決策が良いです。極端に複雑なことをしようとしているわけではありません

答え1

質問では、いくつかの選択肢と、やらないかもしれないことが念頭にありますが、質問がまったく明確ではありません。次のようなことを推測します。

\documentclass{article}
\usepackage{pgffor,pgfmath}

% Got some array from Excel via =randbetween(1-26)
\def\Sometwentysixnumarray{{11,4,8,12,17,20,13,9,12,16,4,19,6,11,4,26,10,13,14,15,15,1,5,1,26,14}}

\begin{document}
\foreach \x[count=\xi from 0] in {a,...,z}{
\pgfmathparse{\Sometwentysixnumarray[\xi]}
\x = \pgfmathresult, 
}
\end{document} 

ここに画像の説明を入力してください

関連情報