goLaTeX - Mein LaTeX-Forum

Mein LaTeX-Forum


Login  | Registrieren
Forum
      Option
[Erweitert]
  • Diese Seite weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

renewcommand\algorithmicendfor funktioniert nicht

 

KK12
Forum-Newbie
Forum-Newbie

Beiträge: 9
Anmeldedatum: 29.11.17
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.01.2018, 15:59     Titel: renewcommand\algorithmicendfor funktioniert nicht
  Antworten mit Zitat      
Hallo, ich versuche gerade in Latex ein Programm mit While- Schleifen, For-Schleifen und if-else Anweisungen zu schreiben und möchte gerne jeweils
das "do" der While-Schleife, sowie "endfor" der For-Schleife und das "endif" der if-else Anweisung entfernen.

Ich habe folgende Paket installiert:
\usepackage{algorithm}
\usepackage{algorithmic}

und folgende Befehle erstellt:

\newcommand\NoDo{\renewcommand\algorithmicdo{}}
\newcommand\NoThen{\renewcommand\algorithmicthen{}}
\newcommand\NoEndfor{\renewcommand\algorithmicendfor{}}
\newcommand\NoEndif{\renewcommand\algorithmicendif{}}

Die ersten beiden funktionieren, aber die letzten beiden nicht.
Es wird zwar keine Fehlermeldung erzeugt, aber es passiert einfach nichts.
Muß ich die letzten beiden Befehle anders schreiben?

Vielen Dank im voraus
Private Nachricht senden Benutzer-Profile anzeigen

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.01.2018, 10:13     Titel:
  Antworten mit Zitat      
Crosspost in LaTeX.org

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.01.2018, 10:21     Titel:
  Antworten mit Zitat      
Anonymous hat Folgendes geschrieben:
Crosspost in LaTeX.org

http://latex.org/forum/viewtopic.php?f=5&p=104218
In beiden Fällen fehlt leider das InfoMinimalbeispiel.

KK12
Forum-Newbie
Forum-Newbie

Beiträge: 9
Anmeldedatum: 29.11.17
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.01.2018, 10:40     Titel:
  Antworten mit Zitat      
sorry, anbei ein Minimalbeispiel

Code • Öffne in Overleaf
\documentclass[]{article}
\usepackage[utf8
]{inputenc}
\usepackage{hyperref}
\usepackage[german]{babel}
\usepackage{german}
\selectlanguage{german}
\usepackage{amsthm}

\usepackage{algorithm}
\usepackage{algorithmic}


\newcommand\NoDo{\renewcommand\algorithmicdo{}}
\newcommand\NoThen{\renewcommand\algorithmicthen{}}
\newcommand\NoEndfor{\renewcommand\algorithmicendfor{}}
\newcommand\NoEndif{\renewcommand\algorithmicendif{}}
\newcommand\NoEndwhile{\renewcommand\algorithmicendwhile{}}

\begin{document}

\begin{algorithm}
\caption{Pseudocode}
\begin{algorithmic}

   \NoDo
   \FOR{xy}
   \STATE //  
   \NoEndfor
   \ENDFOR  
   \STATE
   \NoThen
   \IF{(x)}
   \STATE //do something
   \ELSE
   \STATE //do something else
   \NoEndif
   \ENDIF\newline
   \NoDo
   \WHILE{(xy)}
   \STATE //    
   \STATE
   \WHILE
   \STATE
   \NoThen
   \IF{(xy)}
   \STATE xy
   \ELSE
   \STATE yz
   \NoEndif
   \ENDIF\newline
   \NoEndwhile
   \ENDWHILE
   \newpage
   \NoEndwhile
   \ENDWHILE
\end{algorithmic}
\end{algorithm}
 



Code • Öffne in Overleaf
Algorithm 1 Pseudocode
for xy
//
end for
if (x)
//do something
else
//do something else
end if
while (xy)
//
while
if (xy)
xy
else
yz
end if
end while
end while
 


test.pdf
 Beschreibung:

Download
 Dateiname:  test.pdf
 Dateigröße:  32.66 KB
 Heruntergeladen:  9 mal
Private Nachricht senden Benutzer-Profile anzeigen

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.01.2018, 10:53     Titel:
  Antworten mit Zitat      
\ENDWHILE beendet erst interne Gruppen und führt dann \algorithmicendwhile aus. Da Du aber \NoEndWhile noch vor \ENDWHILE ausführt, ist die lokale Umdefinierung von \algrorithmicendwhileauf die aktuelle Gruppe beschränkt und damit nicht mehr gültig, wenn es innerhalb von \ENDWHILE verwendet wird. Du müsstest also \NoEndWhile vor dem jeweiligen \WHILE einfügen und nicht erst vor dem \ENDWHILE. Das gilt für ähnliche Befehle in gleicher Weise.

Außerdem sei darauf hingewiesen, dass damit zwar der Text nicht mehr ausgegeben wird, die Zeile aber bleibt, also eine Leerzeile entsteht.

KK12
Forum-Newbie
Forum-Newbie

Beiträge: 9
Anmeldedatum: 29.11.17
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.01.2018, 10:55     Titel:
  Antworten mit Zitat      
Funktioniert, vielen Dank
Private Nachricht senden Benutzer-Profile anzeigen

Neues Thema eröffnen Neue Antwort erstellen



Options and Permissions
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen
.

goLaTeX ist Teil der goForen
goForen.de goMATLAB.de goLaTeX.de goPCB.de


  Impressum | FAQ | goLaTeX RSS Button RSS-Feed

Copyright © 2008 - 2018 goLaTeX.de