Ragazzi, dovrei scrivere degli algoritmi in una presentazione. Per gli algoritmi la scelta è caduta su algorithmicx (http://tug.ctan.org/cgi-bin/ctanPackageInformation.py?id=algorithmicx), per la presentazione ho scelto beamer.
Non ho problemi a usarli separati, ma quando li fondo nascono i problemi. Più precisamente questo codice:
`
\documentclass{beamer}\usetheme{AnnArbor}
\usepackage{algorithm}
\usepackage{algpseudocode}\begin{document}
%\frame{
\begin{algorithm}
\caption{The Bellman-Kalaba algorithm}
\begin{algorithmic}[1]
\Procedure {BellmanKalaba}{$G$, $u$, $l$, $p$}
\ForAll {$v \in V(G)$}
\State $l(v) \leftarrow \infty$
\EndFor
\State $l(u) \leftarrow 0$
\Repeat
\For {$i \leftarrow 1, n$}
\State $min \leftarrow l(v_i)$
\For {$j \leftarrow 1, n$}
\If {$min > e(v_i, v_j) + l(v_j)$}
\State $min \leftarrow e(v_i, v_j) + l$
\State $p(i) \leftarrow v_j$
\EndIf
\EndFor
\State $l’(i) \leftarrow min$
\EndFor
\State $changed \leftarrow l \not= l’$
\State $l \leftarrow l’$
\Until{$\neg changed$}
\EndProcedure
\end{algorithmic}
\end{algorithm}
%}
\end{document}
`L’algoritmo è preso da un esempio della documentazione di algorithmicx, se lo uso con la classe article va tutto bene. Se uso il listato qui presente compila ancora. Ma se decommento la riga \frame{ e la parentesi di chiusura non compila più, restituiendomi:
`! LaTeX Error: Not in outer par mode`Qualcuno sa di perché mi dia questo problema? (Che si risolve anche se elimino l’ambiente algorithm)
Invece di \frame{…} è preferibile usare
`\begin{frame}
…
\end{frame}`
che dà più libertà. Inoltre non ha molto senso usare l’ambiente algorithm che è simile a figure e table. Basta mettere la didascalia come titolo del frame.
`
\begin{frame}
\frametitle{The Bellman-Kalaba algorithm}
\begin{algorithmic}[1]
…
\end{algorithmic}
\end{frame}`
Ciao
Enrico