让数学运算符逐字工作

让数学运算符逐字工作

我对 Latex 还很陌生,我希望数学运算符在逐字标签中出现,如下所示:

\begin{verbatim}
24:     max:=0
25:     for i:=n downto 1 do
26:         found:=false
27:         clique($S_i$ \cap N($v_i$); 1)
28:         c[i]:=max
29:     end for
30:     return
\end{verbatim}

$S_i$显示为原样,没有下标?我该如何将其呈现i为下标?

答案1

两种可能性:使用fancyvrb或者listings可以让你逃避数学并为你提供自动编号的软件包:

\documentclass{article}
\usepackage{fancyvrb}
\usepackage{listings}

\lstset{
  basicstyle=\ttfamily,
  mathescape=true,
  columns=fullflexible,
  numberstyle=\ttfamily\footnotesize
}

\renewcommand\theFancyVerbLine{\footnotesize\arabic{FancyVerbLine}:}
\renewcommand\thelstnumber{\arabic{lstnumber}:}

\begin{document}

\begin{Verbatim}[numbers=left,firstnumber=24,codes={\catcode`$=3\catcode`_=8}]
max:=0
for i:=n downto 1 do
    found:=false
    clique($S_i$ \cap N($v_i$); 1)
    c[i]:=max
end for
return
\end{Verbatim}

\begin{lstlisting}[numbers=left,firstnumber=24]
max:=0
for i:=n downto 1 do
    found:=false
    clique($S_i$ \cap N($v_i$); 1)
    c[i]:=max
end for
return
\end{lstlisting}

\end{document}

在此处输入图片描述

我不太确定这个\cap部分,所以我保留了原来的内容。

相关内容