
По какой-то причине при ссылке на алгоритм всегда отображается 0 вместо фактического номера алгоритма. Ссылки работают, я могу нажать на них, и они переместят меня к алгоритму.
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{algpseudocode}
\usepackage{algorithm}
\usepackage{hyperref}
\begin{document}
\section{Introduction}
It doesn't work \ref{alg1} \ref{alg2}.
\begin{algorithm}
\caption{Algorithm 1}
\begin{algorithmic}[ht]
\label{alg1}
\State it's a test
\end{algorithmic}
\end{algorithm}
\newpage
\begin{algorithm}
\caption{Algorithm 2}
\begin{algorithmic}[ht]
\label{alg2}
\State it's a test
\end{algorithmic}
\end{algorithm}
\end{document}
решение1
\label
идет сразу после \caption
:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{algpseudocode}
\usepackage{algorithm}
\usepackage{hyperref}
\begin{document}
\section{Introduction}
It doesn't work \ref{alg1} \ref{alg2}.
\begin{algorithm}
\caption{Algorithm 1}
\label{alg1}
\begin{algorithmic}[ht]
\State it's a test
\end{algorithmic}
\end{algorithm}
\newpage
\begin{algorithm}
\caption{Algorithm 2}
\label{alg2}
\begin{algorithmic}[ht]
\State it's a test
\end{algorithmic}
\end{algorithm}
\end{document}
решение2
Разместите \label
сразу после \caption{…}
:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{algpseudocode}
\usepackage{algorithm}
\usepackage{hyperref}
\newcommand*{\algorithmautorefname}{Algorithm}
\begin{document}
\section{Introduction}
It does work Algorithm~\ref{alg1} and \autoref{alg2}.
\begin{algorithm}
\caption{Algorithm 1}
\label{alg1}
\begin{algorithmic}[ht]
\State it's a test
\end{algorithmic}
\end{algorithm}
\newpage
\begin{algorithm}
\caption{Algorithm 2}
\label{alg2}
\begin{algorithmic}[ht]
\State it's a test
\end{algorithmic}
\end{algorithm}
\end{document}
В примере я также показал, как использовать \autoref
ссылку на алгоритм.