
У меня есть следующий код алгоритма
\begin{algorithm}[t]
\caption{my algo}
\label{my algo}
\begin{algorithmic}[]
\State \textbf{Input:}{ abc}
\State \textbf{Output:}{ xyz}
\State \textbf{Launch:}{I want to indent the body of this algo afterwards }
% I want to indent the following body:
\For{i=0,i<5,i++}
\For {j=0,i<5,j++ }
\State{Kill}
\State{Now}
\State{There}
\If {this}
\State{then this}}
\EndIf
\For {z=0,z<10,z++ }
\State{Action performed on z}
\EndFor
\State{abc processed }
\State{xyz produced}
\EndFor
% \State{processing done}
\EndFor
\end{algorithmic}
\end{algorithm}
После третьего оператора "State" я хочу сделать отступ для тела алгоритма, начиная с цикла for. Как это сделать? В настоящее время цикл for начинается прямо под оператором "Launch".
решение1
Я решил ту же проблему с помощью этого трюка (изменение \transparent{0.5}
на \transparent{0}
for production).
\begin{algorithm}[!t]
\caption{}\label{}
\begin{algorithmic}
\STATE whatever
\transparent{0.5}
\vspace{-1\baselineskip}
\IF fake indentation
\transparent{1}
\FOR {this for loop gets now indented}
\STATE whatever
\ENDFOR
\transparent{0.5}
\vspace{-1\baselineskip}
\ENDIF
\transparent{1}
\end{algorithmic}
\end{algorithm}