更改算法名称而不进行全局更改

更改算法名称而不进行全局更改

我想知道是否有可能用其他东西来代替“算法 1”,例如“代码 1”,而无需修改我的乳胶文件中的其他算法(或无需全局更改内容)。

我看到这个问题已经被问过很多次了,但是所有的解决方案要么使用不同的算法包,要么全局修改算法属性。

\documentclass{article}
\usepackage[utf8]{inputenc}

\usepackage[a4paper, total={6in, 8in}]{geometry}
\usepackage{algorithm}
\usepackage{algpseudocode}
\usepackage{amsmath,amssymb}
\usepackage{amsthm}

\begin{document}

\begin{algorithm}[h]
    \caption{Rule evaluator for classical attribute grammar}\label{alg:ag-eval}
    \begin{algorithmic}
    \Procedure{\texttt{AG\_EVAL}}{$r, Val$}
        \If{$r \equiv v_0 \texttt{=} g( v_1, \dots, v_n)$}
            \State $Val(v_0) \gets g( Val(v_1), \dots, Val(v_n))$
        \EndIf
    \EndProcedure
\end{algorithmic}
\end{algorithm}


\end{document}

在此处输入图片描述

答案1

诀窍是使用{ }团体包装算法以防止更改全局设置并使用floatname命令更新名称。

\documentclass{article}
\usepackage[utf8]{inputenc}

\usepackage[a4paper, total={6in, 8in}]{geometry}
\usepackage{algorithm}
\usepackage{algpseudocode}
\usepackage{amsmath,amssymb}
\usepackage{amsthm}

\begin{document}

{ % opening curly braces
\floatname{algorithm}{Code}  % replacing "Algorithm" with "Code"
\begin{algorithm}[h]
    \caption{Rule evaluator for classical attribute grammar}\label{alg:ag-eval}
    \begin{algorithmic}
    \Procedure{\texttt{AG\_EVAL}}{$r, Val$}
        \If{$r \equiv v_0 \texttt{=} g( v_1, \dots, v_n)$}
            \State $Val(v_0) \gets g( Val(v_1), \dots, Val(v_n))$
        \EndIf
    \EndProcedure
\end{algorithmic}
\end{algorithm}
} % closing curly braces

\end{document}

信用

参考

相关内容