Vai al contenuto

Pacchetti per algoritmi in Scissor LaTeX

I pacchetti per algoritmi funzionano in parte in Scissor LaTeX: l’ambiente algorithm funziona con una didascalia numerata e \label; i comandi maiuscoli di algorithmic (\STATE, \FOR) vengono letti solo nei layout da conferenza; algpseudocode (\State, \For) e algorithm2e (\KwIn, \For{}{}) non sono supportati, quindi metti invece i passi in un blocco verbatim.

Cosa fanno i pacchetti

Lo pseudocodice in LaTeX richiede di solito due pacchetti. algorithm offre un ambiente numerato con didascalia, "Algorithm 1: ...", che si comporta come oggetto mobile, come una figura. Un secondo pacchetto scrive i passi: algorithmic (comandi maiuscoli, \STATE, \IF, \ENDIF), algpseudocode della raccolta algorithmicx (maiuscole e minuscole, \State, \If, \EndIf), oppure algorithm2e, che porta un proprio ambiente algorithm e comandi come \KwIn e \For{condition}{body}.

Cosa funziona qui

PacchettoFunzioneIn Scissor LaTeX
algorithm\begin{algorithm}, \caption, \label, \refFunziona: "Algorithm N", didascalia sotto, non si sposta.
algorithmPosizionamento [H], [t], [h]Tralasciato: l’algoritmo resta dove lo scrivi.
algorithm\listofalgorithmsNon supportato: saltato con un messaggio.
algorithmic\STATE, \IF, \FOR, \WHILE, \RETURN ...In parte: letti nei documenti con un layout da conferenza, senza numeri di riga. Altrove sono sconosciuti.
algpseudocode\State, \If, \For, \Function, \Return ...Non supportato: i nomi dei comandi vengono saltati e i passi finiscono tutti su una riga.
algorithm2e\KwIn, \KwOut, \For{..}{..}, \eIf, \;Non supportato: saltati con un messaggio; i passi finiscono tutti insieme.

All’interno di algorithm, il contenuto è centrato, come in una figura. Un blocco verbatim viene centrato nel suo insieme, con le righe allineate a sinistra e rientrate come digitate, il che lo rende qui il modo più affidabile per mostrare i passi.

Esempi

Passi in verbatim, con un numero e un riferimento:

algorithm con passi in verbatim

LaTeXPreambolo: \usepackage{algorithm}Apri nell'editor (si apre in una nuova scheda)
\begin{algorithm}
\caption{Find the largest value}
\label{alg:max}
\begin{verbatim}
best := xs[1]
for i := 2 to n:
    if xs[i] > best:
        best := xs[i]
return best
\end{verbatim}
\end{algorithm}
Algorithm~\ref{alg:max} looks at each value once.
Composto da Scissor LaTeX: algorithm con passi in verbatim

I comandi di algorithm2e vengono saltati, quindi le righe finiscono tutte insieme. La scheda Problemi elenca i comandi che non ha riconosciuto:

algorithm2e non è supportato

LaTeXPreambolo: \usepackage{algorithm2e}Apri nell'editor (si apre in una nuova scheda)
\begin{algorithm}
\caption{Sum of a list}
\KwIn{numbers $a_1, \dots, a_n$}
$s \gets 0$\;
\For{$i \gets 1$ \KwTo $n$}{$s \gets s + a_i$\;}
\Return{$s$}\;
\end{algorithm}
Composto da Scissor LaTeX: algorithm2e non è supportato

Scheda Problemi: Skipped 4 unknown commands: \KwIn, \For, \KwTo, \Return

La pagina Algoritmi e pseudocodice mette a confronto algorithmic in un layout da conferenza e algpseudocode.

Compatibilità

  • Da un’installazione TeX a qui: gli algoritmi mantengono numero e didascalia. I passi scritti con algpseudocode o algorithm2e finiscono tutti insieme; riscrivili in verbatim, oppure con algorithmic in un layout da conferenza.
  • Da qui a un’installazione TeX: algorithm con passi in verbatim si compila ovunque e ha lo stesso aspetto, salvo che l’algoritmo può spostarsi in cima a una pagina.

I manuali sono su CTAN: algorithms (algorithm e algorithmic), algorithmicx (algpseudocode) e algorithm2e.

Vedi anche Algoritmi, listings e Layout da conferenza.

Domande e risposte

Quale pacchetto per algoritmi conviene usare in Scissor LaTeX?

Usa algorithm per il numero e la didascalia, e scrivi i passi in un blocco verbatim. Funziona in ogni documento qui e in ogni installazione TeX.

Perché le righe del mio algoritmo sono unite in una sola?

I passi usano comandi di algpseudocode o algorithm2e, che Scissor LaTeX non legge. I loro nomi vengono saltati, quindi il testo di tutti i passi finisce su una sola riga.

Ogni esempio di questa pagina viene composto da Scissor LaTeX quando il sito viene generato. Ultimo aggiornamento: 2026-11-07.