实际上,我首先以通用 LaTeX 格式编写了算法,并成功完成。我使用了以下算法包:
\usepackage{algorithm,algpseudocode}
\usepackage{algorithmic}
\usepackage{program}
\usepackage{algorithm}
但是当我复制相同的算法代码时Elsvier LaTeX 模板它无法正常工作。请帮助我解决这个问题。我使用的类的格式是elsearticle
:
\documentclass[review]{elsarticle}
\usepackage{lineno,hyperref}
\bibliographystyle{elsarticle-num}
现在我提供更多信息:代码和输出
\documentclass[review]{elsarticle}
\usepackage{lineno,hyperref}
\modulolinenumbers[5]
\usepackage{graphicx}
\usepackage[font=small,labelfont=bf]{caption}%do
\usepackage{subcaption}
\usepackage{algpseudocode}
\usepackage{algorithmic}
\begin{algorithm}[h]
\State $a$ is AB valyes, $T$ is dec, $R\textsubscript{Data}$ is NOTHING\;
\State A\textsubscript{Ab} is values\;
\begin{algorithmic}[1]
\State $R\textsubscript{Data} \gets abs \Comment{my name is Xyz}$ \;
\State $L_i \gets $ Labeling my name \Comment(i=1,2,3)\;
\State $T_{0}\gets R_{Data}$.$T$($start$)\;
\State $T_{end}\gets R_{Data}$.$T$($end$)\;
\Procedure {who} {$A\textsubscript{ab}$, $D\textsubscript{i}$}
\For {$s\gets A_{ab}(1)$ \TO $D_{Data}(end)$}
\If{AB}
\State No Matter
\Else
\State yes $A_{b}$ nothing special
\EndIf
\For {$F_{S}\gets 1 \leq 6$}
\State $S_{F}\gets F(T_{sw})$
\EndFor
\EndFor
\EndProcedure
\Procedure {where}{$A_{ab}$}
\For {Man}
\State Guess where I am
\EndFor
\EndProcedure
\caption{STGY}
\end{algorithmic}
\end{algorithm}
答案1
嗯,在您给出的代码中存在一些问题:
- 首先你没有
\begin{document}
。 - 我
\;
在一些行末加了一些评论。 - 您需要更改
\TO
为\to
。 - 有些
$
已经失踪。
请参阅以下可编译代码
\documentclass[review]{elsarticle}
\usepackage{lineno}
\modulolinenumbers[5]
\usepackage{graphicx}
\usepackage[font=small,labelfont=bf]{caption}
\usepackage{subcaption}
\usepackage{algorithm}% <=================http://ctan.org/pkg/algorithms
\usepackage{algpseudocode}% <========== http://ctan.org/pkg/algorithmicx
\usepackage{hyperref} % <===============================================
\begin{document}
\begin{algorithm}
\begin{algorithmic}[1]
\State $a$ is AB valyes, $T$ is dec, $R\textsubscript{Data}$ is NOTHING%\;
\State $A\textsubscript{Ab}$ is values%\; % <===========================
\State $R\textsubscript{Data} \gets $ abs \Comment{my name is Xyz} %\;
\State $L_i \gets $ Labeling my name \Comment(i=1,2,3)%\;
\State $T_{0}\gets R_{Data}$.$T$($start$)%\;
\State $T_{end}\gets R_{Data}$.$T$($end$)%\;
\Procedure {who} {$A\textsubscript{ab}$, $D\textsubscript{i}$}
\For {$s\gets A_{ab}(1) \to D_{Data}(end)$} % <=======================
\If{AB}
\State No Matter
\Else
\State yes $A_{b}$ nothing special
\EndIf
\For {$F_{S}\gets 1 \leq 6$}
\State $S_{F}\gets F(T_{sw})$
\EndFor
\EndFor
\EndProcedure
\Procedure {where}{$A_{ab}$}
\For {Man}
\State Guess where I am
\EndFor
\EndProcedure
\caption{STGY}\label{STGY}
\end{algorithmic}
\end{algorithm}
\end{document}
结果:
顺便说一句:hyperref
在您的情况下,该包应该被称为最后一个包。