
Вот мой псевдоалгоритм:
\begin{algorithm}[t]
\caption{Generate Disseminated Sequences}\label{euclid}
\begin{algorithmic}[1]
\Function{output}{$memory,input$}
\State $\text{initialize}~ B \gets \text{all zeros}$
\For{$i = 1$ to ${sizeIn}$\text{+1}}
\State $\text{return}~OUTPUT\gets \text{convert \textit{B} to decimal }$
\For{$j = memorySize$ to $2$}
\State $M[j+1] \gets M[j]$
\EndFor
\State $B[i] \gets inputString[i]$
\EndFor
\EndFunction
\end{algorithmic}
\end{algorithm}
Моя проблема в том,
- Я не получаю конца, когда я его запускаю.
- Я хочу уменьшить занимаемое им пространство, но когда я ставлю «
\vspace
после»\end{algorithmic}
или\end{algorithm}
«в последней строке», это выходит за рамки пространства алгоритма.
решение1
Вы, вероятно, используете
\usepackage[noend]{algpseudocode}
Это удаляет все конечные предложения из структур. См.algpseudocode
без конечного блока текста. Удалить noend
возможность восстановления конечных предложений.
Окружение algorithmic
определяется как список. Пространство после этого можно настроить с помощьюetoolbox
пластырь:
\documentclass{article}
\usepackage{algpseudocode,etoolbox}
\begin{document}
Something above \verb|algorithmic|.
\begin{algorithmic}[1]
\State First state
\State Second state
\State Third state
\State Last state
\end{algorithmic}
Something below \verb|algorithmic|.
\hrulefill
\AfterEndEnvironment{algorithmic}{\vspace{50pt}}
Something above \verb|algorithmic|.
\begin{algorithmic}[1]
\State First state
\State Second state
\State Third state
\State Last state
\end{algorithmic}
Something below \verb|algorithmic|.
\end{document}
Однако более типично для людей использовать algorithmic
среду в algorithm
, которая является плавающим блоком. В этом отношении см.Удалить пробел после рисунка и перед текстомдля изменения любого из параметров, связанных с расстоянием вокруг поплавков.
В частности, вас может заинтересовать регулировка длины \textfloatsep
или \intextsep
.