Kommentieren Sie algorithmisch eine Zeile, die mit „if“ beginnt, und verwenden Sie uncover/visible

Kommentieren Sie algorithmisch eine Zeile, die mit „if“ beginnt, und verwenden Sie uncover/visible

Ich versuche zu änderndieser Code, in das Folgende:

\documentclass{beamer}
\usepackage[utf8]{inputenc} 
\usepackage[english]{babel}
\usepackage[plain]{algorithm}
\usepackage{algorithmic}
\usepackage{array}
\usepackage{eqparbox}
\renewcommand\algorithmiccomment[1]{%
  \eqparbox{COMMENT}{#1}%
}

\begin{document}
\begin{frame}
\begin{algorithm}[H]
  \begin{algorithmic}[1]
    \STATE $x := 1$ \visible<2->{\COMMENT{$x_1 \in [1;1]$}}
    \WHILE[\visible<2->{\COMMENT{whatever}}]{{$x < 10000$}
      \STATE $x := x+1$     \COMMENT{bla}
      \ENDWHILE
  \end{algorithmic}
\end{algorithm}
\end{frame}

\end{document} 

Ich möchte nur, dass der Kommentar des if-Blocks auf einer zweiten, anderen Folie erscheint. Deshalb habe ich verwendet \uncover, aber das wird bei der Kompilierung von nicht akzeptiert pdflatex.

DerFehlerist ! Undefined control sequence.(ich kann das Protokoll einfügen, wenn Sie möchten)

Wie kann ich das ändern? Vielen Dank im Voraus

BEARBEITEN: die beste Option wäre wahrscheinlich algorithmicx. Kommentare von a \Whilemüssen also am Ende der gleichen Zeile eingefügt werden und nicht so etwas wie\WHILE[]

Antwort1

Wird dies angefordert? Ich bin mir nicht sicher, aber manchmal ist es besser, den \onlyBefehl zu verwenden.

\documentclass{beamer}
\usepackage[utf8]{inputenc} 
\usepackage[english]{babel}
\usepackage[plain]{algorithm}
\usepackage{algorithmic}
\usepackage{array}
\usepackage{eqparbox}
\renewcommand\algorithmiccomment[1]{%
  \eqparbox{COMMENT}{#1}%
}

\begin{document}
\begin{frame}
\begin{algorithm}[H]
  \begin{algorithmic}[1]
    \only<1>{%
      \STATE $x := 1$
      \WHILE[]{$x < 10000$}
      \STATE $x := x+1$     \COMMENT{bla}
      \ENDWHILE
    }%
\only<2->{%
  \STATE $x := 1$ {\COMMENT{$x_1 \in [1;1]$}}
  \WHILE[\COMMENT{whatever}]{$x < 10000$}
  \STATE $x := x+1$     \COMMENT{bla}
  \ENDWHILE
}%
\end{algorithmic}
\end{algorithm}
\end{frame}

\end{document} 

verwandte Informationen