请有人指导我如何编写附加在 Latex 中的算法,我已经尝试过,但它给了我很多错误
\begin{document}
\usepackage{algorithm}
\usepackage{algpseudocode}
\begin{algorithm}
\caption{LWU-NN Algorithm}
\label{LWU-NN Algorithm}
\begin{algorithmic}[1]
\Procedure{R\textendash Routing Table}{}
\For {R = 1 to size (Lt)}
\For {C = 1 to size (Lt)}
\State $ L_{1} $= $Tr^{-1} Lt{x,y}+O $
\State $ K={Tr}^{-1}\theta (x)$ %
\For {i = 1 to size Lt)}
\For {j = 1 to size Tr}
\State $Tr_{ij}=K_{ij} + \rho_{ij} = Tr^{-1}\theta{x} $ $+$ $\rho_{ij} $
\EndFor
\EndFor
\State $P_{i}(Tr)=1/{2\pi}^{n/2} 1/N_{i} \sum_{i=1}^{N_i}e^{-{ Tr_{i}-Tr_{j} }^{-1} {Tr_{i}-Tr_{j} }}/{2\sigma^2 }$
\State \if ${I_{RC} > P {Tr}}$ %
\State $Rt_{RC}= Lb {P {Tr}}$;
\EndIf
\EndFor
\EndProcedure
\end{algorithmic}
\end{algorithm}
\end{document}
答案1
如果我知道要加载哪些包,这将会容易很多。
存在几个问题:
- 您
\For
比\EndFor
s 多一个; - 你有一个
\EndIf
没有\If
; - 您有一个
\if
,它是常规条件,而不是算法标记的一部分,但您永远不会关闭它。而且,无论如何,您不能使用\if
后面跟着一些伪代码。
修复这些问题:
如果这不是预期的输出,则必须进行调整。我并不总是确定您想要表达什么。(应该是 吗\if
?\If
或者 是\State
预期的 而您的意思\EndIf
是 是\EndFor
?)
请注意,一致地缩进代码可以极大地帮助避免和发现拼写错误、错误和其他异常:
\documentclass{article}
\usepackage{algorithm,algpseudocode}
\begin{document}
\begin{algorithm}
\caption{LWU-NN Algorithm}
\label{LWU-NN Algorithm}
\begin{algorithmic}[1]
\Procedure{R\textendash Routing Table}{}
\For {R = 1 to size (Lt)}
\For {C = 1 to size (Lt)}
\State $L_{1} $= $Tr^{-1} Lt{x,y}+O $
\State $K={Tr}^{-1}\theta (x)$
\For {i = 1 to size Lt)}
\For {j = 1 to size Tr}
\State $Tr_{ij}=K_{ij} + \rho_{ij} = Tr^{-1}\theta{x} $ $+$ $\rho_{ij}$
\EndFor
\EndFor
\State $P_{i}(Tr)=1/{2\pi}^{n/2} 1/N_{i} \sum_{i=1}^{N_i}e^{-{ Tr_{i}-Tr_{j} }^{-1} {Tr_{i}-Tr_{j} }}/{2\sigma^2 }$
\If{${I_{RC} > P {Tr}}$}
\State $Rt_{RC}= Lb {P {Tr}}$;
\EndIf
\EndFor
\EndFor
\EndProcedure
\end{algorithmic}
\end{algorithm}
\end{document}