Secuencia de control no definida.\BState ->\State \algbackskip \BState

Secuencia de control no definida.\BState ->\State \algbackskip \BState

Recibí el error al crear un pseudocódigo para mi informe. El siguiente es mi código en LaTeX. Esto muestra una "secuencia de control indefinida \BState-> \State \algbackskip \BState". Por favor ayúdame con esto.

\documentclass{article}
\usepackage{amsmath}
\usepackage{algorithm}
\usepackage[noend]{algpseudocode}
\begin{document}
\begin{algorithm}[H]
  \begin{algorithmic}[1]
    \BState \emph{\textbf{Key(s)}}:
  \end{algorithmic}
\end{algorithm}
\end{document}

Respuesta1

La parte que está causando este problema es insuficiente \@algbackskip(que forma parte de \BState).

El principalalgorithmicxpaquetecódigo -algorithmicx.sty- contiene definiciones para \@algbackskip, pero ha sido comentada:

%\def\algbackskip{\hskip-\ALG@thistlm}

Mi suposición es que esto podría ser un error y debería corregirse.

ingrese la descripción de la imagen aquí

\documentclass{article}
\usepackage[noend]{algpseudocode}

\makeatletter
% Reinsert missing \algbackskip
\def\algbackskip{\hskip-\ALG@thistlm}
\makeatother

\begin{document}

\begin{algorithmic}[1]
  \State something
  \If{this}
    \State do this
    \BState do that
  \EndIf
  \BState now this
\end{algorithmic}

\end{document}

información relacionada