
您好,嘗試在 Latex 中編寫偽代碼
我無法修復第 8 行的錯誤
代碼:
\begin{algorithm} \caption{Učící mechanismus všech obcí}
\begin{algorithmic}[1]
\While {Obce ještě nedokonvergovaly}
\State t=t+1
\ForEach {KNIES_p $\in$ Population}
\For{$X_i$ $\in$ Zařazené body}
\State KNIES_p.\quad \textbf{Learn}($X_i$, $\beta_t = \frac{t\beta_T}{T}$)
\EndFor
\If{KNIES_p {$\qaq$} KNIES}
\State KNIES(t) = KNIES_p
\end{algorithmic}
\end{algorithm}
答案1
你有許多錯誤,主要是由於數學符號處理不當造成的。
沒有預定義的\ForEach
區塊,您必須自己定義它。
提供 的定義\qaq
,這不是標準指令。
\documentclass[a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[czech]{babel}
\usepackage{algorithm,algpseudocode}
\algblockx{ForEach}{EndForEach}{\textbf{foreach} }{\textbf{end foreach}}
\newcommand{\ivar}[1]{\mathit{#1}}
\newcommand{\tvar}[1]{\textrm{#1}}
\newcommand{\qaq}{???} % what's this?
\begin{document}
\begin{algorithm} \caption{Učící mechanismus všech obcí}
\begin{algorithmic}[1]
\While {Obce ještě nedokonvergovaly}
\State $t=t+1$
\ForEach {$\ivar{KNIES}_p \in \tvar{Population}$}
\For{$X_i\in\tvar{Zařazené body}$}
\State $\ivar{KNIES}_p$.\quad
\textbf{Learn}($X_i$, $\beta_t = \frac{t\beta_T}{T}$)
\EndFor
\EndForEach
\If{$\ivar{KNIES}_p \qaq \ivar{KNIES}$}
\State $\ivar{KNIES}(t) = \ivar{KNIES}_p$
\EndIf
\EndWhile
\end{algorithmic}
\end{algorithm}
\end{document}