Algoritmos y pseudocódigo
Envuelve el pseudocódigo en un entorno algorithm con un \caption para obtener "Algorithm 1"; dentro, Scissor LaTeX solo lee los comandos en mayúsculas de algorithmic (\STATE, \FOR) en los diseños de congreso, así que en los demás documentos pon los pasos en un bloque verbatim.
El entorno algorithm
El paquete algorithm ofrece un entorno numerado para pseudocódigo, como una figura: un \caption le da un número ("Algorithm 1"), y un \label después del pie te permite hacer referencia a él con \ref. En Scissor LaTeX el algoritmo se queda donde lo escribes y su pie se coloca debajo.
Lo que va dentro depende del paquete que uses para los pasos, y ahí es donde cambia la compatibilidad:
| Paquete | Comandos | En Scissor LaTeX |
|---|---|---|
| algorithm | entorno algorithm, \caption, \label | Funciona: numerado "Algorithm N", pie debajo. |
| algorithmic | \STATE, \IF, \FOR, \WHILE, \RETURN... (en mayúsculas) | En parte: solo se leen en documentos con diseño de congreso; en los demás son comandos desconocidos. |
| algpseudocode (algorithmicx) | \State, \If, \For, \EndFor, \Return... | No se admite: se omiten con un mensaje y los pasos quedan juntos en una sola línea. |
| algorithm2e | \KwIn, \For{..}{..}, \eIf... | No se admite: se omiten con un mensaje. |
Pseudocódigo que funciona en todas partes
La forma más fiable de mostrar pseudocódigo en cualquier documento de Scissor LaTeX es un bloque verbatim dentro de algorithm. Conservas el número y el pie, y las líneas mantienen su sangría.
Un algoritmo con los pasos en verbatim
\begin{algorithm}
\caption{Sum of a list}
\label{alg:sum}
\begin{verbatim}
s := 0
for each a in xs:
s := s + a
return s
\end{verbatim}
\end{algorithm}
Algorithm~\ref{alg:sum} adds the numbers of a list.Para pseudocódigo con fórmulas, un lstlisting funciona igual, o puedes escribir los pasos como texto normal fuera del entorno algorithm, en forma de lista numerada.
Los pasos como lista numerada, con matemáticas
\textbf{Input:} numbers $a_1, \dots, a_n$.
\begin{enumerate}
\item Set $s \gets 0$.
\item For $i = 1, \dots, n$: set $s \gets s + a_i$.
\item Return $s$.
\end{enumerate}algorithmic en los diseños de congreso
Los diseños parecidos a los de congresos (arXiv, IEEE, NeurIPS, ICML y los demás) leen los comandos en mayúsculas del paquete algorithmic: palabras clave como for, do, end for y return se componen en negrita, y cada comando empieza una línea nueva. No se dibujan números de línea, y las líneas se centran. La pestaña Problemas indica el diseño que se usa.
algorithmic en un documento de estilo arXiv
\documentclass{article}
\usepackage{arxiv}
\usepackage{algorithm,algorithmic}
\begin{document}
\begin{algorithm}
\caption{Sum of a list}
\begin{algorithmic}
\STATE $s \gets 0$
\FOR{$i = 1$ to $n$}
\STATE $s \gets s + a_i$
\ENDFOR
\RETURN $s$
\end{algorithmic}
\end{algorithm}
\end{document}
Pestaña Problemas: Layout in the style of the arXiv preprint style (final mode). Not official. To compile elsewhere, add arxiv.sty from github.com/kourgeorge/arxiv-style.
algpseudocode no se admite
algpseudocode, el paquete más habitual en los artículos recientes, usa comandos con mayúsculas y minúsculas como \State y \EndFor. Scissor LaTeX no los conoce: sus nombres se omiten, las fórmulas y las palabras se conservan, y todo queda junto en una sola línea. La pestaña Problemas enumera los comandos omitidos.
algpseudocode: los pasos quedan juntos
\begin{algorithm}
\caption{Sum of a list}
\begin{algorithmic}[1]
\State $s \gets 0$
\For{$i = 1$ to $n$}
\State $s \gets s + a_i$
\EndFor
\State \Return $s$
\end{algorithmic}
\end{algorithm}Pestaña Problemas: Skipped 4 unknown commands: \State, \For, \EndFor, \Return
Si necesitas que el documento funcione tanto aquí como en una instalación de TeX, escribe los pasos en verbatim como se muestra arriba; se compila en todas partes.
Qué cambia respecto a una instalación de TeX
La página del paquete es algorithm, algorithmic y algpseudocode. Los manuales están en CTAN: algorithms, algorithmicx y algorithm2e.
Consulta también paquetes de algoritmos, Listados de código y Diseños de congreso.
Preguntas y respuestas
¿Cómo escribo un algoritmo en LaTeX?
Usa el entorno algorithm con un \caption y pon los pasos dentro. En Scissor LaTeX los pasos funcionan mejor en un bloque verbatim, o con los comandos \STATE de algorithmic en un diseño de congreso.
¿Por qué mis líneas \State quedan juntas?
\State viene de algpseudocode, que Scissor LaTeX no admite. Los nombres de los comandos se omiten, así que los pasos se unen en una sola línea. Usa verbatim para los pasos.
¿Puedo hacer referencia a un algoritmo por su número?
Sí. Pon \label{alg:nombre} después del \caption y escribe Algorithm~\ref{alg:nombre}.
Scissor LaTeX compone cada ejemplo de esta página al generar el sitio. Última actualización: 2026-11-07.