Im Mathematikmodus wird kein "-" (Minuszeichen) angezeigt. Die Prozedur \linebreak funktioniert in der "algorithmischen" Umgebung nicht.

Im Mathematikmodus wird kein "-" (Minuszeichen) angezeigt. Die Prozedur \linebreak funktioniert in der "algorithmischen" Umgebung nicht.
\begin{algorithmic}
        \Procedure{$M_{topo}$}{$f^-,y$} \inebreak
            $(n, m, q, A,B)\leftarrowff^-, y_1...y_m\leftarrow y$
            \For {$(g, i, j) \in \{n + 1, . . . , n + q\} × \{0, 1\} × \{0, 1\}$}
                \If{$g  \leq n + q − m$} $G_g(i, j) \leftarrow 0$
                \Else $G_g(i, j)\leftarrow y_{\text{g−(n+q−m)}}$
                \EndIf
            \EndFor
            $f \leftarrow (n, m, q, A,B,G), x \leftarrow 0^n$ k
            \Return (f, x)
        \EndProcedure
\end{algorithmic} \\

Ich komme nicht $(n, m, q, A,B)\leftarrowff^-, y_1...y_m\leftarrow y$in die zweite Zeile, nachdem ich\linebreak

Und -das Zeichen kommt nicht rein\Else $G_g(i, j)\leftarrow y_{\text{g−(n+q−m)}}$

Bildbeschreibung hier eingeben

Antwort1

  • In einer algorithmicxUmgebung werden Zeilenumbrüche über das \StateSchlüsselwort und nicht über generiert \linebreak.

  • Verwenden Sie keine Nicht-ASCII-Unicode-Glyphen wie ×und , es sei denn, Sie verwenden entweder XeLaTeX oder LuaLaTeX und eine geeignete Unicode-Mathematikschriftart. Verwenden Sie stattdessen \timesund -; Letzteres ist das einfache ASCII-Zeichen „Bindestrich“.

  • Geben Sie außerdem \dotsund nicht " ..." ein.

Ein vollständiges MWE; beachten Sie das "plötzliche" [!] Auftreten vonEnde, wennUndEnde für:

Bildbeschreibung hier eingeben

\documentclass{article}
\usepackage{algpseudocode}
\begin{document}
\begin{algorithmic}
        \Procedure{$M_{\mathrm{topo}}$}{$f^-,y$} 
            \State $(n, m, q, A,B)\gets f^-,\ y_1,\dots, y_m\gets y$
            \For {$(g, i, j) \in \{n+1,\dots,n+q\} \times \{0, 1\} \times \{0, 1\}$}
                \If {$g  \leq n + q - m$} $G_g(i, j) \gets 0$
                \Else \ $G_g(i, j)\gets y_{g-(n+q-m)}$
                \EndIf
            \EndFor
            \State $f \gets (n, m, q, A,B,G),\ x \gets 0^n$ k % huh?
            \State \textbf{return} $(f, x)$
        \EndProcedure
\end{algorithmic}
\end{document} 

verwandte Informationen