我来自俄罗斯,那里的“end if”形式不同于“\algorithmicend \algorithmicif”(凯斯利至少在我的大学里
但是当我尝试按照官方文档的方式重新定义它时:
\newcommand{\algorithmicendif}{\textbf{\underline{кесли}}}
它失败:
ERROR: LaTeX Error: \algorithmicendif undefined.
自官方文档的上一版以来,命令是否有所改变?
答案1
正如 Jubobs 在评论中所建议的,您应该重新定义 If 块(另请参阅 algorithmicx 包文档):
\documentclass{article}
\usepackage[utf8x]{inputenc}
\usepackage[russian]{babel}
\usepackage{algpseudocode}
\algnewcommand{\algorithmicendif}{\textbf{\underline{кесли}}}
\algblockdefx[IF]{If}{EndIf}[1]{\algorithmicif\ #1\ \algorithmicthen}{\algorithmicendif}
\begin{document}
\begin{algorithmic}[1]
\If{$a = b$}
\State \Comment $a = b$
\EndIf
\end{algorithmic}
\end{document}