algorithm2e: Zeilennummerierung bei Zeilenlabel falsch

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: algorithm2e: Zeilennummerierung bei Zeilenlabel falsch

von quietscheentchen » Sa 30. Jan 2016, 12:07

danke

von Bartman » Sa 30. Jan 2016, 02:25

\documentclass[11pt,a4paper]{article}
\usepackage[linesnumbered]{algorithm2e}

\begin{document}
\begin{algorithm}
\SetKw{go}{goto}
\Repeat{condition}{
	\While{condition\label{label1}}{
		$a \leftarrow 1$;\\
		$b \leftarrow 2$;
	} 
	\If{condition}{
		\go line \ref{label1}
	}
}
\end{algorithm}
\end{document}
Gefunden auf TeX.SX

algorithm2e: Zeilennummerierung bei Zeilenlabel falsch

von quietscheentchen » Fr 29. Jan 2016, 12:22

Hallo,

ich wollte im Algorithmus einen goto-Befehl schreiben, brauche also ein Label und eine Referenz auf eine andere Zeile. In der Dokumentation von algorithm2e habe ich den Befehl /lnl{} als line label gefunden, aber das Problem ist, dass er an der Stelle, an der ich das einfüge, eine Zeilennummer auslässt. Hier das Minimalbeispiel:
\documentclass[11pt,a4paper]{article}
\usepackage[linesnumbered]{algorithm2e}

\begin{document}
\begin{algorithm}
\SetKw{go}{goto}
\Repeat{condition}{\lnl{label1}\While{condition}
	{
		$a \leftarrow 1$;\\
		$b \leftarrow 2$;
	} 
	\If{condition}
	{\go line \ref{label1}}
}
\end{algorithm}
\end{document}
Ich habe es vorher auch schon mit dem normalen \label{} versucht, aber das konnte ich nur direkt vor das while (-> dann hatte ich die Zeilennummer des Befehld "repeat") oder nach den while-Block (-> dann hatte ich die Zeilennummer von "end").

Habt ihr irgendwelche Ideen, was ich falsch mache oder wie es funktioniert?
Dateianhänge
algorithm2e_linesnumbered.pdf
Ausgabe
(54.59 KiB) 536-mal heruntergeladen

Nach oben