Langkau ke kandungan

Pakej algoritma dalam Scissor LaTeX

Pakej algoritma berfungsi sebahagiannya dalam Scissor LaTeX: persekitaran algorithm berfungsi dengan kapsyen bernombor dan \label; perintah huruf besar algorithmic (\STATE, \FOR) hanya dibaca dalam susun atur persidangan; algpseudocode (\State, \For) dan algorithm2e (\KwIn, \For{}{}) tidak disokong, jadi sebaliknya letakkan langkah-langkah dalam blok verbatim.

Apa yang dilakukan oleh pakej ini

Pseudokod dalam LaTeX biasanya memerlukan dua pakej. algorithm memberikan persekitaran bernombor dengan kapsyen, "Algorithm 1: ...", yang mengapung seperti rajah. Pakej kedua menulis langkah-langkahnya: algorithmic (perintah dalam huruf besar, \STATE, \IF, \ENDIF), algpseudocode daripada himpunan algorithmicx (huruf campuran, \State, \If, \EndIf), atau algorithm2e, yang membawa persekitaran algorithm sendiri dan perintah seperti \KwIn dan \For{condition}{body}.

Apa yang berfungsi di sini

PakejCiriDalam Scissor LaTeX
algorithm\begin{algorithm}, \caption, \label, \refBerfungsi: "Algorithm N", kapsyen di bawah, tidak mengapung.
algorithmPeletakan [H], [t], [h]Diabaikan: algoritma kekal di tempat anda menulisnya.
algorithm\listofalgorithmsTidak disokong: dilangkau dengan mesej.
algorithmic\STATE, \IF, \FOR, \WHILE, \RETURN ...Sebahagian: dibaca dalam dokumen dengan susun atur persidangan, tanpa nombor baris. Di tempat lain ia tidak dikenali.
algpseudocode\State, \If, \For, \Function, \Return ...Tidak disokong: nama perintah dilangkau dan langkah-langkah bercantum dalam satu baris.
algorithm2e\KwIn, \KwOut, \For{..}{..}, \eIf, \;Tidak disokong: dilangkau dengan mesej; langkah-langkah bercantum.

Di dalam algorithm, kandungan berada di tengah, seperti dalam rajah. Blok verbatim diletakkan di tengah secara keseluruhan, dengan barisnya dijajarkan ke kiri dan diinden seperti yang ditaip, yang menjadikannya cara paling boleh dipercayai untuk memaparkan langkah di sini.

Contoh

Langkah dalam verbatim, dengan nombor dan rujukan:

algorithm dengan langkah verbatim

LaTeXMukadimah: \usepackage{algorithm}Buka dalam editor (dibuka dalam tab baharu)
\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.
Disusun atur oleh Scissor LaTeX: algorithm dengan langkah verbatim

Perintah algorithm2e dilangkau, jadi baris-barisnya bercantum. Tab Masalah menyenaraikan perintah yang tidak dikenalinya:

algorithm2e tidak disokong

LaTeXMukadimah: \usepackage{algorithm2e}Buka dalam editor (dibuka dalam tab baharu)
\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}
Disusun atur oleh Scissor LaTeX: algorithm2e tidak disokong

Tab Masalah: Skipped 4 unknown commands: \KwIn, \For, \KwTo, \Return

Halaman Algoritma dan pseudokod menunjukkan algorithmic dalam susun atur persidangan dan algpseudocode bersebelahan.

Keserasian

  • Dari pemasangan TeX ke sini: algoritma mengekalkan nombor dan kapsyennya. Langkah yang ditulis dengan algpseudocode atau algorithm2e bercantum; tulis semula dalam verbatim, atau dengan algorithmic dalam susun atur persidangan.
  • Dari sini ke pemasangan TeX: algorithm dengan langkah verbatim dikompil di mana-mana dan kelihatan sama, kecuali algoritma itu mungkin mengapung ke bahagian atas halaman.

Manual terdapat di CTAN: algorithms (algorithm dan algorithmic), algorithmicx (algpseudocode) dan algorithm2e.

Lihat juga Algoritma, listings dan Susun atur persidangan.

Soalan dan jawapan

Pakej algoritma manakah yang patut saya gunakan dalam Scissor LaTeX?

Gunakan algorithm untuk nombor dan kapsyen, dan tulis langkah-langkah dalam blok verbatim. Itu berfungsi dalam setiap dokumen di sini dan dalam setiap pemasangan TeX.

Mengapa baris algoritma saya bercantum menjadi satu?

Langkah-langkah itu menggunakan perintah algpseudocode atau algorithm2e, yang tidak dibaca oleh Scissor LaTeX. Namanya dilangkau, jadi teks semua langkah berakhir dalam satu baris.

Setiap contoh di halaman ini disusun atur oleh Scissor LaTeX semasa laman dibina. Kali terakhir dikemas kini 2026-11-07.