向伪代码添加注释

向伪代码添加注释

我想找到一个伪代码包,它支持在 if 的右侧写注释的可能性,并且它不会在中间,{ }而是在页面的右侧,在符号之后。

在此处输入图片描述

我想

if x < p {     .} then

像这样:

if (x < p)         \blacktriangleright x is a ...

我的代码:

 \documentclass[]{scrbook}
 \usepackage[english]{babel}
 \usepackage[latin1]{inputenc}
 \usepackage[T1]{fontenc}
 \begin{document}
 \begin{algorithm}
 \caption{Influx}
 \label{influx}
 \begin{algorithmic}[1]
 \REQUIRE $p \in [0,1]$, $G$
 \ENSURE None
 \FOR{$i = 0 \to 2^d-1$}
   \IF{$n(\nu_i) = 0$}
     \IF{ $x < p$ \COMMENT{ $x$ is a normal distribution number in the range of $[0,1]$}} 
     \STATE Occupy $v_i$ site with probablility $p$ 
     \ENDIF
   \ENDIF
 \ENDFOR
 \end{algorithmic}
 \end{algorithm}

有任何想法吗?

答案1

为了实现您的愿望,有必要对软件包进行一些重大更改(据我所知)algorithmic。一种可能性是使用算法包。下面是一个小例子

\documentclass[]{scrbook}
\usepackage[T1]{fontenc}
\usepackage[english]{babel}
\usepackage{algorithm,algorithmicx,algpseudocode}
\usepackage{amssymb}

%\algrenewcommand{\algorithmiccomment}[1]{\hfill$\blacktriangleright$ #1}

\begin{document}
\begin{algorithm}
  \caption{Influx}
  \label{influx}
  \begin{algorithmic}[1]
  \Require $p \in [0,1]$, $G$
  \Ensure None \Comment{a test comment}
  \For{$i = 0 \to 2^d-1$}\Comment{another test comment} 
    \If{$n(\nu_i) = 0$}
      \If{ $x < p$}  \Comment{$x$ is a normal distribution number in the range of $[0,1]$}
      \State Occupy $v_i$ site with probablility $p$ 
      \EndIf
    \EndIf
  \EndFor
  \end{algorithmic}
\end{algorithm}

\end{document}

结果如下:

在此处输入图片描述

取消注释该行,\algrenewcommand您将得到一个黑色三角形作为注释。

相关内容