數學模式下的 FP 指令

數學模式下的 FP 指令

我在(套件)環境fp中運行巨集時遇到一個奇怪的問題。我用來產生一些值,這些值在基於 的個人清單環境中呈現。tabenumtablistsfptabenum

事實是,如果我fp在 外部設定一個值tabenum,我可以在環境內部到達它,但如果我在環境內部設定它,則結果值將被取消設定。根據相對於指令的設定位置,還會出現奇怪的行為tabenumitem

例如下面的程式碼

\begin{tabenum}
\FPmul\result{12}{10}
\tabenumitem \result
\end{tabenum}

一段時間會導致"unknown \result command" error 以下情況:

\FPmul\result{12}{10}
\begin{tabenum}
\tabenumitem \result
\end{tabenum}

將不會。

我的問題是我如何使用環境multido中的命令產生多個值tabenum,因此在打開環境之前我無法產生它們。

透過嘗試大量範例,我發現fp命令的行為在數學模式內發生了變化。也許解決方案可以包括退出運行fp命令的數學模式並返回到使用 來顯示值tabenumitem

謝謝

答案1

表格單元格充當群組,因此非全域定義在群組關閉後消失。

  • 要么將計算放在同一個單元格中,要么
  • 定義一個全域巨集。

兩者的範例:

\documentclass{article}
\usepackage{tablists}
\usepackage{fp}

\begin{document}
  \begin{tabenum}
    \tabenumitem
    \FPmul\result{12}{10}%
    \FPclip\result\result
    \result
  \end{tabenum}
  \begin{tabenum}
    \FPmul\result{21}{10}%
    \FPclip\result\result
    \global\let\gresult\result
    \tabenumitem\gresult
  \end{tabenum}
\end{document}

結果

相關內容