封装算法

封装算法

我正在使用algorithm包来创建伪代码。但我想修改某些行的显示方式。

这是我的代码:

\documentclass[twoside,12pt]{book}
\usepackage{algorithm}
\usepackage{algorithmic}

\begin{document}

\begin{algorithm}
\begin{algorithmic}[1]
\STATE{Actividades Programadas}
\STATE Construcción de Soluciones
\STATE Actualización de feromona
\STATE Acciones del demonio
\end{algorithmic}
\caption{Procedimiento de ACO}\label{alg:algoritmoRaro}
\end{algorithm}

\end{document}

我希望文本“Actividades Programadas”以粗体显示并且不带数字。此外,解决方案的构建、能源的实现和恶魔的行动也需要编号和缩进。

答案1

下面我提供了\nonumSTATE设置\STATE不带编号的正则。此外,\BEGININDENT...\ENDINDENT是缩进其内容的环境。

在此处输入图片描述

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{algorithm,algorithmic}

\makeatletter
\newcommand{\nonumSTATE}{\item[]}
\newcommand{\BEGININDENT}{\begin{ALC@g}}
\newcommand{\ENDINDENT}{\end{ALC@g}}
\makeatother

\begin{document}

\begin{algorithm}
  \begin{algorithmic}[1]
    \nonumSTATE {\bfseries Actividades Programadas}
    \BEGININDENT
      \STATE Construcción de Soluciones
      \STATE Actualización de feromona
      \STATE Acciones del demonio
    \ENDINDENT
  \end{algorithmic}
  \caption{Procedimiento de ACO}
\end{algorithm}

\end{document}

设置\nonumSTATE大胆的自动是可能的(例如,如果您编写代码来提供内容作为参数 - 就像您在原始帖子中所做的那样),但使用\textbf\bfseries似乎足够了。

相关内容