
Я работаю с IEEEtran и пакетом algorithm2e. У меня есть алгоритм с пронумерованными строками. Я отмечаю некоторые строки звездочкой перед строкой следующим образом:
\documentclass[conference]{IEEEtran}
\usepackage[ruled,linesnumbered]{algorithm2e}
% *** MATH PACKAGES ***
\usepackage{amsmath}
\usepackage{amssymb}
\begin{document}
\begin{algorithm}
\nlset{1}$x=1$\;
\nlset{*2}\For{$i=1$ \emph{\KwTo} $10$}{
\nlset{*3}$x=x+1$\;
\nlset{*4}}
\end{algorithm}
\end{document}
Проблема в том, что я не могу создать звездочку в строке "end" цикла for: Вместо этого код выше генерирует новую строку перед строкой "end" и помечает ее звездочкой. Есть ли выход?
Спасибо.
решение1
Вместо этого вы можете использовать \SetNlSty{}{}{}
и поместить его в группу со строками, которым вы хотите добавить звезду.
\documentclass[conference]{IEEEtran}
\usepackage[ruled,linesnumbered]{algorithm2e}
\begin{document}
\begin{algorithm}
$x=1$\;
{% star group begin
\SetNlSty{textbf}{*}{}
\For{$i=1$ \emph{\KwTo} $10$}{
$x=x+1$\;
}
}% star group end
$x=2$
\end{algorithm}
\end{document}
Выход: