algorithm2e で `loop` キーワードを記述しようとしています

algorithm2e で `loop` キーワードを記述しようとしています

私は使用していますアルゴリズム2eそして、ここに表示されているキーワードを使用する必要がありますloop

[![ここに画像の説明を入力][1]][1]

ムウェ

documentclass{article}
\usepackage{xcolor}
\usepackage[linesnumbered,ruled,vlined]{algorithm2e}



%%% Coloring the comment as blue
\newcommand\mycommfont[1]{\footnotesize\ttfamily\textcolor{blue}{#1}}
\SetCommentSty{mycommfont}

\SetKwInput{KwInput}{Input}                % Set the Input
\SetKwInput{KwOutput}{Output}              % set the Output


\begin{document}
\maketitle

\begin{algorithm}[H]
\DontPrintSemicolon
  
  \KwInput{Your Input}
  \KwOutput{Your output}
  \KwData{Testing set $x$}
  $\sum_{i=1}^{\infty} := 0$ \tcp*{this is a comment}
  \tcc{Now this is an if...else conditional loop}
  \If{Condition 1}
    {
        Do something    \tcp*{this is another comment}
        \If{sub-Condition}
        {Do a lot}
    }
    \ElseIf{Condition 2}
    {
        Do Otherwise \;
        \tcc{Now this is a for loop}
        \For{sequence}    
        { 
            loop instructions
        }
    }
    \Else
    {
        Do the rest
    }
    
    \tcc{Now this is a While loop}
   \While{Condition}
   {
        Do something\;
   }

\caption{Example code}
\end{algorithm}

\end{document}

答え1

私は今このパッケージを発見しており、ドキュメントには独自のキーワードを定義できるマクロがあります。

ループを定義するものもありますが、ループの最後または先頭に停止テストを追加します。

そのため、ループの終了前に停止テストが指定されているため、ブロックを定義するマクロを選択しました。\SetKwBlock{Loop}{Loop}{end}

最初のパラメータはマクロの名前を定義するので、大文字で記述した場合は{Loop}、 を呼び出すときにも同じように記述する必要があります\Loop。小文字で記述した場合は{loop}、 を呼び出す必要があります\loop。2 番目のパラメータは、アルゴリズム内でキーワードがどのように表示されるかです。

マニュアルの35ページを引用します。

\SetKwBlock{開始}{開始}{終了}マクロを定義する\Begin{txt}これはブロックを表します。テキストは単語で囲まれています始めるそして終わりキーワードのタイポグラフィでは右にシフト(インデント)されています。\V行 または \ライン モードまっすぐな垂直線が追加されます。\Begin(サイドテキスト){テキスト}ブロックで囲まれたテキストも表示されます始めるそして終わり、 しかしサイドテキストの後に置くと始めるキーワード。\tcc*[f] マクロでは、同じ行にコメントを入れることができます。始める代替手段を使用することもできます\u開始{txt}これは\Begin{txt}しかし、終わり. 例えば、必ずしも終わりキーワード。

スクリーンショット

\documentclass{article}
\usepackage{xcolor}
\usepackage[linesnumbered,boxruled,ruled,noline]{algorithm2e}



%%% Coloring the comment as blue
\newcommand\mycommfont[1]{\footnotesize\ttfamily\textcolor{blue}{#1}}
\SetCommentSty{mycommfont}

\SetKwInput{KwInput}{Input}                % Set the Input
\SetKwInput{KwOutput}{Output}              % set the Output
\SetKwBlock{Loop}{Loop}{end}
\begin{document}
%\maketitle

\begin{algorithm}[H]
\DontPrintSemicolon

  \KwInput{Your Input}
  \KwOutput{Your output}
  \KwData{Testing set $x$}
  \Loop ( until the terminal condition is met. One epoch:)
  {n=n+1

  $\sum_{i=1}^{\infty} := 0$ \tcp*{this is a comment}
  \tcc{Now this is an if...else conditional loop}
  \If{Condition 1}
    {
        Do something    \tcp*{this is another comment}
        \If{sub-Condition}
        {Do a lot}
    }

   terminal condition: RMSE on \dots
}
\caption{Example code}
\end{algorithm}

\end{document}

関連情報