\begin{algorithm}
\caption{Určení sousedících clusterů}
\begin{algorithmic}[1]
\For {$a, b \in C$}
\State předpokládej, že $a, b$ jsou sousedící
\For {$k, l \in C$ a $k, l\neq a, b$}
\If {$P_a P_b \cap P_k P_l \neq\emptyset$}
\State $a, b$ nejsou sousedící clustery
\Else
\If {\|$P_a P_b\|\geq \textbf{E}_r_\in_c\|P_a P_r\|$}
\State $a, b$ nejsou sousedící clustery
\EndIf
\EndIf
\EndFor
\EndFor
\end{algorithmic}
\end{algorithm}
답변1
당신은 사용할 수 있습니다algorithmic
의사코드 작성을 위한 패키지와algorithm
부동 소수점(그림과 같은)에 알고리즘을 넣기 위한 패키지입니다.
\documentclass{article}
%
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{algorithm}
\usepackage{algorithmic}
%
\newcommand{\algorithmicbreak}{\textbf{break}}
\newcommand{\BREAK}{\STATE \algorithmicbreak}
%
\begin{document}
%
\begin{algorithm}
\caption{My Algorithm}
\begin{algorithmic}[1] % 1: line number for each line
\FOR {$a, b\in C$}
\STATE Suppose $a, b$ are adjacent
\FOR {$k, l\in C$ and $k, l\neq a, b$}
\IF {$\vec{P_aP_b}\cap \vec{P_kP_l}\neq\o$}
\STATE $a, b$ are not adjacent
\BREAK
\ELSIF {$||\vec{P_aP_b}||\geq\mathbf{E}_{r\in C}||\vec{P_aP_r}||$}
\STATE $a, b$ are not adjacent
\BREAK
\ENDIF
\ENDFOR
\ENDFOR
\end{algorithmic}
\end{algorithm}
\end{document}
답변2
ASCII가 아닌 문자를 입력하므로 \usepackage[utf8]{inputenc}
서문에 다음이 필요합니다.algorithm
그리고algpseudocode
.
\documentclass{article}
\usepackage{algorithm,algpseudocode}
\usepackage[utf8]{inputenc}
\begin{document}
\begin{algorithm}
\caption{Určení sousedících clusterů}
\begin{algorithmic}[1]
\For {$a, b \in C$}
\State předpokládej, že $a, b$ jsou sousedící
\For {$k, l \in C$ a $k, l \neq a, b$}
\If {$P_a P_b \cap P_k P_l \neq \emptyset$}
\State $a, b$ nejsou sousedící clustery
\Else
\If {$\|P_a P_b\| \geq \mathbf{E}_r \in c \|P_a P_r\|$}
\State $a, b$ nejsou sousedící clustery
\EndIf
\EndIf
\EndFor
\EndFor
\end{algorithmic}
\end{algorithm}
\end{document}