Przejdź do treści

Pakiety do algorytmów w Scissor LaTeX

Pakiety do algorytmów działają w Scissor LaTeX częściowo: środowisko algorithm działa z numerowanym podpisem i \label; polecenia algorithmic pisane wielkimi literami (\STATE, \FOR) są odczytywane tylko w układach konferencyjnych; algpseudocode (\State, \For) i algorithm2e (\KwIn, \For{}{}) nie są obsługiwane, więc zamiast tego umieść kroki w bloku verbatim.

Do czego służą pakiety

Pseudokod w LaTeX wymaga zwykle dwóch pakietów. algorithm daje numerowane środowisko z podpisem „Algorithm 1: ...”, które jest obiektem pływającym jak rysunek. Drugi pakiet zapisuje kroki: algorithmic (polecenia wielkimi literami, \STATE, \IF, \ENDIF), algpseudocode z zestawu algorithmicx (wielkość liter mieszana, \State, \If, \EndIf) lub algorithm2e, który ma własne środowisko algorithm i polecenia takie jak \KwIn oraz \For{condition}{body}.

Co tu działa

PakietFunkcjaW Scissor LaTeX
algorithm\begin{algorithm}, \caption, \label, \refDziała: „Algorithm N”, podpis pod spodem, bez przemieszczania.
algorithmUmieszczenie [H], [t], [h]Pomijane: algorytm zostaje tam, gdzie go napiszesz.
algorithm\listofalgorithmsNieobsługiwane: pomijane z komunikatem.
algorithmic\STATE, \IF, \FOR, \WHILE, \RETURN ...Częściowo: odczytywane w dokumentach z układem konferencyjnym, bez numerów wierszy. W innych dokumentach są nieznane.
algpseudocode\State, \If, \For, \Function, \Return ...Nieobsługiwane: nazwy poleceń są pomijane, a kroki zlewają się w jeden wiersz.
algorithm2e\KwIn, \KwOut, \For{..}{..}, \eIf, \;Nieobsługiwane: pomijane z komunikatem; kroki zlewają się ze sobą.

Wewnątrz algorithm treść jest wyśrodkowana, jak w rysunku. Blok verbatim jest wyśrodkowany jako całość, a jego wiersze są wyrównane do lewej i wcięte tak, jak je wpisano, dlatego jest to tutaj najpewniejszy sposób pokazania kroków.

Przykłady

Kroki w verbatim, z numerem i odsyłaczem:

algorithm z krokami w verbatim

LaTeXPreambuła: \usepackage{algorithm}Otwórz w edytorze (otwiera się w nowej karcie)
\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.
Złożone przez Scissor LaTeX: algorithm z krokami w verbatim

Polecenia algorithm2e są pomijane, więc wiersze zlewają się ze sobą. Karta Problemy wymienia polecenia, których nie rozpoznano:

algorithm2e nie jest obsługiwany

LaTeXPreambuła: \usepackage{algorithm2e}Otwórz w edytorze (otwiera się w nowej karcie)
\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}
Złożone przez Scissor LaTeX: algorithm2e nie jest obsługiwany

Karta Problemy: Skipped 4 unknown commands: \KwIn, \For, \KwTo, \Return

Strona Algorytmy i pseudokod pokazuje obok siebie algorithmic w układzie konferencyjnym i algpseudocode.

Zgodność

  • Z instalacji TeX do Scissor LaTeX: algorytmy zachowują numer i podpis. Kroki zapisane za pomocą algpseudocode lub algorithm2e zlewają się ze sobą; przepisz je w verbatim albo za pomocą algorithmic w układzie konferencyjnym.
  • Ze Scissor LaTeX do instalacji TeX: algorithm z krokami w verbatim kompiluje się wszędzie i wygląda tak samo, z tą różnicą, że algorytm może przesunąć się na górę strony.

Dokumentacje są dostępne w CTAN: algorithms (algorithm i algorithmic), algorithmicx (algpseudocode) oraz algorithm2e.

Zobacz też Algorytmy, listings oraz Układy konferencyjne.

Pytania i odpowiedzi

Którego pakietu do algorytmów używać w Scissor LaTeX?

Użyj algorithm dla numeru i podpisu, a kroki zapisz w bloku verbatim. Działa to w każdym dokumencie tutaj i w każdej instalacji TeX.

Dlaczego wiersze mojego algorytmu łączą się w jeden?

Kroki używają poleceń algpseudocode lub algorithm2e, których Scissor LaTeX nie odczytuje. Ich nazwy są pomijane, więc tekst wszystkich kroków trafia do jednego wiersza.

Każdy przykład na tej stronie jest składany przez Scissor LaTeX podczas budowania witryny. Ostatnia aktualizacja: 2026-11-07.