¿Por qué aparece este error 'Quizás falta un \elemento' con el paquete algorítmico?

¿Por qué aparece este error 'Quizás falta un \elemento' con el paquete algorítmico?

Estoy tratando de imitar un ejemplo que encontré en elWikilibro de látexescribir mi propio algoritmo usando el algorithmicpaquete. Sin embargo, no puedo entenderlo claramente y recibo errores todo el tiempo.

 \documentclass{article}
 \usepackage{times}
 \usepackage{amsthm}
 \usepackage{algorithm}
 \usepackage{algorithmic}
 \usepackage{alltt}
 \usepackage{mathtools}
 \usepackage{parskip}
 \begin{document}
 \begin{algorithm}
 \caption{Assigning j to a center}
 \begin{algorithmic}  
 INITIALIZE $C = \emptyset$
 \FOR {i=1,...,r}  <------Error
 \IF {$N_i \cap N_{i_0} \neq\emptyset$ for some $i_0 \leq i$
 \STATE assign to $p_{i_0}$ all demand nodes j with $i \in   \widetilde{p_j}$
 \ELSE
 \STATE $C = C \cup \{ i \}$ and assign to $p_i$ all the demand nodes $j$ with  $i \in   \widetilde{p_j}$
 \ENDIF
 \ENDFOR
 \end{algorithmic}
 \end{algorithm}
 \end{document}

Recibo el error: Something is wrong. Perphaps a missing \itemen la línea con el \FORcomando. ¿Alguien puede ayudar?

Respuesta1

Dos problemas: te faltaba una llave de cierre para el \IFy lo estabas usando INITIALIZEen un lugar prohibido (el comienzo de la lista se usa internamente). Quizás podrías usar

\STATE INITIALIZE $C = \emptyset$

o cualquier otra de las palabras clave proporcionadas por el paquete.

\documentclass{report}
\usepackage{algorithmic,algorithm}

\begin{document}

\begin{algorithm}
 \caption{Assigning j to a center}
 \begin{algorithmic}  
 \STATE INITIALIZE $C = \emptyset$
 \FOR {i=1,...,r}
 \IF {$N_i \cap N_{i_0} \neq\emptyset$ for some $i_0 \leq i$}
 \STATE assign to $p_{i_0}$ all demand nodes j with $i \in   \widetilde{p_j}$
 \ELSE
 \STATE $C = C \cup \{ i \}$ and assign to $p_i$ all the demand nodes $j$ with  $i \in   \widetilde{p_j}$
 \ENDIF
 \ENDFOR
 \end{algorithmic}
 \end{algorithm}

\end{document}

ingrese la descripción de la imagen aquí

información relacionada