Lyx 中伪代码算法所有行的行号

Lyx 中伪代码算法所有行的行号

我正在尝试在 LyX 2.3.2 版本中添加伪代码算法,如下所述这里

  1. 将添加\usepackage{algorithm,algpseudocode}到序言中
  2. 插入算法块(插入-->浮动-->算法)
  3. 在算法块中插入 tex 代码(插入 --> Tex 代码)
  4. 添加以下乳胶代码

    \begin{algorithmic}[1]
    \Require{$\rho \geq 1$}
    \Ensure{$X_k$}
    \While{not converged}
    \State{Solve $X_{k+1}=\min_{X} L(X,Y_k, \mu_k)$}
    \State{$Y_{k+1}=Y_k+\mu_k h(X_{k+1})$}
    \State{$\mu_{k+1}=\rho \mu_k$}
    \EndWhile
    \end{algorithmic}
    

其结果如下:

在此处输入图片描述

根据我读过的其他答案,algorithmic[1]命令应该对每一行进行编号,而不是从伪代码中的第 3 行开始。

我如何修复这个问题并从头开始对所有行进行编号(例如,从\Require{$\rho \geq 1$}本例中开始)?

答案1

它们不应该有行号,但您可以通过在文档 > 设置... > LaTeX 序言中添加以下内容来更改它:

\algrenewcommand\Require{\State \algorithmicrequire~}%
\algrenewcommand\Ensure{\State \algorithmicensure~}%

上述更新\Require\Ensure定期进行\State,因此需设置行号。

在此处输入图片描述

相关内容