Naar de inhoud

Algoritmepakketten in Scissor LaTeX

De algoritmepakketten werken deels in Scissor LaTeX: de omgeving algorithm werkt met een genummerd bijschrift en \label; de commando's in hoofdletters van algorithmic (\STATE, \FOR) worden alleen in congresopmaak gelezen; algpseudocode (\State, \For) en algorithm2e (\KwIn, \For{}{}) worden niet ondersteund, dus zet de stappen in plaats daarvan in een blok verbatim.

Wat de pakketten doen

Pseudocode in LaTeX vraagt meestal om twee pakketten. algorithm geeft een genummerde omgeving met een bijschrift, "Algorithm 1: ...", die zweeft zoals een figuur. Een tweede pakket schrijft de stappen: algorithmic (commando's in hoofdletters, \STATE, \IF, \ENDIF), algpseudocode uit de bundel algorithmicx (gemengde hoofd- en kleine letters, \State, \If, \EndIf), of algorithm2e, dat een eigen omgeving algorithm meebrengt en commando's zoals \KwIn en \For{condition}{body}.

Wat hier werkt

PakketFunctieIn Scissor LaTeX
algorithm\begin{algorithm}, \caption, \label, \refWerkt: "Algorithm N", bijschrift eronder, zweeft niet.
algorithmPlaatsing [H], [t], [h]Weggelaten: het algoritme blijft staan waar je het schrijft.
algorithm\listofalgorithmsNiet ondersteund: overgeslagen met een melding.
algorithmic\STATE, \IF, \FOR, \WHILE, \RETURN ...Deels: gelezen in documenten met congresopmaak, zonder regelnummers. Elders zijn ze onbekend.
algpseudocode\State, \If, \For, \Function, \Return ...Niet ondersteund: de commandonamen worden overgeslagen en de stappen lopen samen op één regel.
algorithm2e\KwIn, \KwOut, \For{..}{..}, \eIf, \;Niet ondersteund: overgeslagen met een melding; de stappen lopen samen.

Binnen algorithm wordt de inhoud gecentreerd, zoals in een figuur. Een blok verbatim wordt als geheel gecentreerd, met de regels links uitgelijnd en ingesprongen zoals getypt, en is daarmee hier de betrouwbaarste manier om stappen te tonen.

Voorbeelden

Stappen in verbatim, met een nummer en een verwijzing:

algorithm met stappen in verbatim

LaTeXPreambule: \usepackage{algorithm}Openen in de editor (opent in een nieuw tabblad)
\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.
Gezet door Scissor LaTeX: algorithm met stappen in verbatim

Commando's van algorithm2e worden overgeslagen, dus de regels lopen samen. Het tabblad Problemen toont de commando's die het niet kende:

algorithm2e wordt niet ondersteund

LaTeXPreambule: \usepackage{algorithm2e}Openen in de editor (opent in een nieuw tabblad)
\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}
Gezet door Scissor LaTeX: algorithm2e wordt niet ondersteund

Tabblad Problemen: Skipped 4 unknown commands: \KwIn, \For, \KwTo, \Return

De pagina Algoritmen en pseudocode toont algorithmic in congresopmaak en algpseudocode naast elkaar.

Compatibiliteit

  • Van een TeX-installatie naar hier: algoritmen houden hun nummer en bijschrift. Stappen die met algpseudocode of algorithm2e zijn geschreven, lopen samen; herschrijf ze in verbatim, of met algorithmic in congresopmaak.
  • Van hier naar een TeX-installatie: algorithm met stappen in verbatim compileert overal en ziet er hetzelfde uit, behalve dat het algoritme naar de bovenkant van een pagina kan zweven.

De handleidingen staan op CTAN: algorithms (algorithm en algorithmic), algorithmicx (algpseudocode) en algorithm2e.

Zie ook Algoritmen, listings en Congresopmaak.

Vragen en antwoorden

Welk algoritmepakket gebruik ik in Scissor LaTeX?

Gebruik algorithm voor het nummer en het bijschrift, en schrijf de stappen in een blok verbatim. Dat werkt hier in elk document en in elke TeX-installatie.

Waarom worden de regels van mijn algoritme samengevoegd?

De stappen gebruiken commando's van algpseudocode of algorithm2e, die Scissor LaTeX niet leest. Hun namen worden overgeslagen, dus de tekst van alle stappen komt op één regel terecht.

Elk voorbeeld op deze pagina wordt door Scissor LaTeX gezet wanneer de site wordt gebouwd. Laatst bijgewerkt op 2026-11-07.