Lyx 中偽代碼演算法所有行的行編號

Lyx 中偽代碼演算法所有行的行編號

我正在嘗試在版本 2.3.2 中的 LyX 中添加偽代碼演算法,如下所述這裡

  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,因此設定了行號。

在此輸入影像描述

相關內容