\calcval
計算を perl に外注し,結果を受け取ります。
emathPl.sty
\calcval[#1]#2#3
perl を起動して計算をさせ,結果を受け取ります。 計算式の部分は,そのまま perl に引き渡されますから, perl の文法に従って記述します。
TeX の制御綴は展開されて perl に渡されますが,~ 負の数の場合,注意が必要です。~ 下の場合,エラーとなります。
\aval-\bval は,展開されて 1--2 となって,perl に引き渡されますが, perl の文法エラーを惹起します。 perl はエラーメッセージを出力しますが,TeX の統合環境の多くはこのエラーを無視します。 正しい perl の式を作るには \bval を (...) で括ってやります。 すなわち \aval-(\bval) とすれば,perl に引き渡される式は 1-(-2) となり, 正しい結果が返ります。
デフォルトでは,perl の printf の書式指定が %f となっていますが, これを変更するオプションが [...] です。 ... の部分は,perl の printf の書式指定の先頭 `%' を除去したものを与えます。 次の例は [.4f] として,小数点以下4桁を指定しています。 なお,この機能を利用して四捨五入をするのは危険です。 下の注意事項をご覧ください。
戻り値として整数を指定するには,[d] をオプションに指定します。 なお,整数の桁数が多いときに,3桁ごとにコンマを入れるには emathKs.sty で定義されている \ketakugiri を用います。