.png)
Интересно, как начать код с определенного числа; это необходимо, когда алгоритм разбит на две страницы.
Небольшой пример, который я хотел бы начать со строки 39 вместо строки 1. Есть ли способ это сделать?
\documentclass[paper=a4,toc=bibliography,nonchapterprefix,parskip=true]{scrreprt}
\usepackage[linesnumbered]{algorithm2e}
\begin{document}
\IncMargin{1em}
\begin{algorithm}
\SetKwData{Left}{left}
\SetKwData{Up}{up}
\SetKwFunction{FindCompress}{FindCompress}
\SetKwInOut{Input}{input}
\SetKwInOut{Output}{output}
\Indm
\Input{A bitmap $Im$ of size $w\times l$}
\Output{A partition of the bitmap}
\Indp
\BlankLine
\For{$i\leftarrow 2$ \KwTo $l$}{
\Left$\leftarrow$ \FindCompress{$Im[i,j-1]$}\;
\Up$\leftarrow$ \FindCompress{$Im[i-1,]$}\; }
\lForEach{element $e$ of the line $i$}{\FindCompress{p}}
\end{algorithm}
\DecMargin{1em}
с наилучшими пожеланиями!
решение1
В algorithm2e
пакете есть noresetcount
опция, но это приводит к непрерывной нумерации всех алгоритмов.
Вы можете определить \rememberlines
макрос, который будет хранить номер строки, которая была текущей в конце среды, algorithm
и \resumenumbering
макрос, который использует это значение.
\documentclass[paper=a4,toc=bibliography,parskip=true]{scrreprt}
\usepackage[linesnumbered]{algorithm2e}
\newcommand{\rememberlines}{\xdef\rememberedlines{\number\value{AlgoLine}}}
\newcommand{\resumenumbering}{\setcounter{AlgoLine}{\rememberedlines}}
\begin{document}
\IncMargin{1em}
\begin{algorithm}
\SetKwData{Left}{left}
\SetKwData{Up}{up}
\SetKwFunction{FindCompress}{FindCompress}
\SetKwInOut{Input}{input}
\SetKwInOut{Output}{output}
\Indm
\Input{A bitmap $Im$ of size $w\times l$}
\Output{A partition of the bitmap}
\Indp
\BlankLine
\For{$i\leftarrow 2$ \KwTo $l$}{
\Left$\leftarrow$ \FindCompress{$Im[i,j-1]$}
\Up$\leftarrow$ \FindCompress{$Im[i-1,]$}}
\lForEach{element $e$ of the line $i$}{\FindCompress{p}
}
\rememberlines
\end{algorithm}
\begin{algorithm}
\resumenumbering
\SetKwData{Left}{left}
\SetKwData{Up}{up}
\SetKwFunction{FindCompress}{FindCompress}
\SetKwInOut{Input}{input}
\SetKwInOut{Output}{output}
\Indm
\Input{A bitmap $Im$ of size $w\times l$}
\Output{A partition of the bitmap}
\Indp
\BlankLine
\For{$i\leftarrow 2$ \KwTo $l$}{
\Left$\leftarrow$ \FindCompress{$Im[i,j-1]$}
\Up$\leftarrow$ \FindCompress{$Im[i-1,]$}}
\lForEach{element $e$ of the line $i$}{\FindCompress{p}
}
\end{algorithm}
\end{document}