Lumaktaw sa nilalaman

Algorithms at pseudocode

Ilagay ang pseudocode sa isang algorithm environment na may \caption para makuha ang "Algorithm 1"; sa loob nito, binabasa lang ng Scissor LaTeX ang upper-case commands ng algorithmic (\STATE, \FOR) sa conference layouts, kaya sa ibang dokumento ilagay ang mga hakbang sa isang verbatim block.

Ang algorithm environment

Nagbibigay ang algorithm package ng numbered environment para sa pseudocode, katulad ng figure: binibigyan ito ng numero ng \caption ("Algorithm 1"), at ang \label pagkatapos ng caption ay nagpapahintulot na tukuyin ito gamit ang \ref. Sa Scissor LaTeX, nananatili ang algorithm kung saan mo ito isinulat at inilalagay ang caption nito sa ilalim.

Ang laman nito ay nakadepende sa package na ginagamit mo para sa mga hakbang, at doon nagkakaiba ang suporta:

PackageCommandsSa Scissor LaTeX
algorithmalgorithm environment, \caption, \labelGumagana: numbered na "Algorithm N", caption sa ilalim.
algorithmic\STATE, \IF, \FOR, \WHILE, \RETURN ... (upper case)Bahagya: binabasa lang sa mga dokumentong may conference layout; sa iba, hindi kilalang commands ang mga ito.
algpseudocode (algorithmicx)\State, \If, \For, \EndFor, \Return ...Hindi suportado: nilalaktawan na may mensahe, at nagdudugtong-dugtong ang mga hakbang sa iisang linya.
algorithm2e\KwIn, \For{..}{..}, \eIf ...Hindi suportado: nilalaktawan na may mensahe.

Pseudocode na gumagana kahit saan

Ang pinaka-maaasahang paraan para magpakita ng pseudocode sa anumang dokumento sa Scissor LaTeX ay isang verbatim block sa loob ng algorithm. Nananatili ang numero at caption, at nananatili ang indentation ng mga linya.

An algorithm with verbatim steps

LaTeXPreamble: \usepackage{algorithm}Buksan sa editor (magbubukas sa bagong tab)
\begin{algorithm}
\caption{Sum of a list}
\label{alg:sum}
\begin{verbatim}
s := 0
for each a in xs:
    s := s + a
return s
\end{verbatim}
\end{algorithm}
Algorithm~\ref{alg:sum} adds the numbers of a list.
Na-typeset ng Scissor LaTeX: An algorithm with verbatim steps

Para sa pseudocode na may formulas, ganoon din gumagana ang lstlisting, o isulat ang mga hakbang bilang ordinaryong text sa labas ng algorithm environment, bilang numbered list.

Steps as a numbered list, with math

\textbf{Input:} numbers $a_1, \dots, a_n$.
\begin{enumerate}
  \item Set $s \gets 0$.
  \item For $i = 1, \dots, n$: set $s \gets s + a_i$.
  \item Return $s$.
\end{enumerate}
Na-typeset ng Scissor LaTeX: Steps as a numbered list, with math

algorithmic sa conference layouts

Binabasa ng conference look-alike layouts (arXiv, IEEE, NeurIPS, ICML at iba pa) ang upper-case commands ng algorithmic package: naka-bold ang keywords gaya ng for, do, end for at return, at nagsisimula ng bagong linya ang bawat command. Hindi iginuguhit ang line numbers, at naka-center ang mga linya. Pinangangalanan ng Problems tab ang layout na ginagamit.

algorithmic in an arXiv-style document

\documentclass{article}
\usepackage{arxiv}
\usepackage{algorithm,algorithmic}
\begin{document}
\begin{algorithm}
\caption{Sum of a list}
\begin{algorithmic}
\STATE $s \gets 0$
\FOR{$i = 1$ to $n$}
  \STATE $s \gets s + a_i$
\ENDFOR
\RETURN $s$
\end{algorithmic}
\end{algorithm}
\end{document}
Na-typeset ng Scissor LaTeX: algorithmic in an arXiv-style document

Tab na Problems: Layout in the style of the arXiv preprint style (final mode). Not official. To compile elsewhere, add arxiv.sty from github.com/kourgeorge/arxiv-style.

Hindi suportado ang algpseudocode

Ang algpseudocode, ang pinakakaraniwang package sa mga bagong papers, ay gumagamit ng mixed-case commands gaya ng \State at \EndFor. Hindi kilala ng Scissor LaTeX ang mga ito: nilalaktawan ang mga pangalan nila, pinapanatili ang formulas at mga salita, at nagdudugtong-dugtong ang lahat sa iisang linya. Inililista ng Problems tab ang mga nilaktawang commands.

algpseudocode: the steps run together

LaTeXPreamble: \usepackage{algorithm,algpseudocode}Buksan sa editor (magbubukas sa bagong tab)
\begin{algorithm}
\caption{Sum of a list}
\begin{algorithmic}[1]
\State $s \gets 0$
\For{$i = 1$ to $n$}
  \State $s \gets s + a_i$
\EndFor
\State \Return $s$
\end{algorithmic}
\end{algorithm}

Tab na Problems: Skipped 4 unknown commands: \State, \For, \EndFor, \Return

Kung kailangan mong gumana ang dokumento dito at sa isang TeX installation, isulat ang mga hakbang sa verbatim gaya ng ipinakita sa itaas; nagko-compile ito kahit saan.

Ano ang naiiba sa isang TeX installation

Ang page ng package ay algorithm, algorithmic at algpseudocode. Nasa CTAN ang mga manual: algorithms, algorithmicx at algorithm2e.

Tingnan din ang algorithm packages, Code listings at Conference layouts.

Mga tanong at sagot

Paano ako susulat ng algorithm sa LaTeX?

Gamitin ang algorithm environment na may \caption, at ilagay sa loob ang mga hakbang. Sa Scissor LaTeX, pinakamahusay gumagana ang mga hakbang sa isang verbatim block, o gamit ang \STATE commands ng algorithmic sa isang conference layout.

Bakit nagdudugtong-dugtong ang mga linyang \State ko?

Galing ang \State sa algpseudocode, na hindi suportado ng Scissor LaTeX. Nilalaktawan ang mga pangalan ng command, kaya nagsasama ang mga hakbang sa iisang linya. Gamitin na lang ang verbatim para sa mga hakbang.

Puwede ko bang tukuyin ang isang algorithm ayon sa numero nito?

Oo. Ilagay ang \label{alg:name} pagkatapos ng \caption at isulat ang Algorithm~\ref{alg:name}.

Bawat halimbawa sa page na ito ay tina-typeset ng Scissor LaTeX kapag binubuo ang site. Huling na-update noong 2026-11-07.