图形环境标题中的 IEEE 算法应为算法

图形环境标题中的 IEEE 算法应为算法

我需要编写一些伪代码并使用 IEEE 模板。但是,指南说 algorithmic 应该包含在图形环境中,并且我不应该使用 algorithm 包看这里

到目前为止没有问题,只需将所有内容都放在图中即可。

\begin{figure}
\begin{algorithmic}[1]
\item[\textbf{Input:}] some input 
\item[\textbf{Output:}] Some output
\STATE $P \gets 1$
\STATE $X \gets 2$
\STATE \RETURN$X + P$
\end{algorithmic}
\caption{Algorithm that does stuff}
\label{MagicalAlg}
\end{figure}

问题是,这给了我一个标题读数Fig. 1. Algorithm that does stuff,我希望它读出来Alg. 1. Algorithm that does stuff 而不是与数字一起编号,而是单独编号。

谢谢您的帮助。

编辑:我发现了一个有点丑陋的解决方法:我根据图形环境定义一个新环境,并将重命名为\figurenameAlg.然后我需要引入另外两个计数器,一个作为占位符(PlaceHolder),一个用于跟踪算法的实际编号(BestAlgorithm)。否则它会将算法和图形一起编号。

\newcounter{BestAlgorithm}
\newcounter{PlaceHolder}

\newenvironment{BestAlgorithm}
{\setcounter{PlaceHolder}{\value{figure}} 
 \setcounter{figure}{\value{BestAlgorithm}}\begin{figure} 
\renewcommand{\figurename}{Alg.} }
{\end{figure} \setcounter{figure}   
{\value{PlaceHolder}} \addtocounter {BestAlgorithm} {1}}

在文档开头定义这个之后,我可以使用它BestAlgorithm来代替figure环境。

有没有更好的方法将计数器分配给新环境?

相关内容