goLaTeX - Mein LaTeX-Forum

Mein LaTeX-Forum


Login  | Registrieren
Direktlinks:
Zuletzt aktive Beiträge
Unbeantwortete Beiträge
[Erweitert]

Forenstatistik:
Beiträge: 83592
Top-Poster: Johannes_B (4679)

Wir begrüßen unseren neuesten Benutzer Nero932.

Partner:


goLaTeX.de wird gefördert durch DANTE e.V.: Deutschsprachige Anwendervereinigung TeX





Forum
      Option
[Erweitert]
  • Diese Seite weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Counter im Befehl auf Eingabe setzen

 

mathe42
Forum-Newbie
Forum-Newbie


Beiträge: 9
Anmeldedatum: 08.01.17
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 08.01.2017, 18:41     Titel: Counter im Befehl auf Eingabe setzen
  Antworten mit Zitat      
Hallo,

Ich möchte gerne ein Befehl definieren, in dem mit verschiedenen countern gearbeitet wird. Dafür möchte ich einen Counter auf den übergebenen wert setzen. (Nach dem Motto:)
Code • Öffne in Overleaf

\newcomand{\test}[1]{
  \newcounter{c
}
  \setcounter{#1}
 ...
}
 


Wie geht das?

Gruß
Mathe42
Private Nachricht senden Benutzer-Profile anzeigen

ChristianHupfer
Forum-Anfänger
Forum-Anfänger

Beiträge: 20
Anmeldedatum: 15.05.16
Wohnort: Schwarzwald
Version: TeXLive 2016, Linux
     Beitrag Verfasst am: 08.01.2017, 18:58     Titel:
  Antworten mit Zitat      
Man sollte
Code • Öffne in Overleaf
\newcounter
nicht in einem
Code • Öffne in Overleaf
- Makro 'verstecken', insbesondere kann man den Befehl pro Zählername nur einziges Mal verwenden (wenn man den Trick nicht kennt Wink)

Bitte definiere genau, was Du mit deinem Makro erreichen willst.
_________________

Oh mein Gott, Du musst mich mit jemanden verwechseln, den das wirklich, wirklich, wirklich interessiert! (Dr. Cox aus "Scrubs" )
Private Nachricht senden Benutzer-Profile anzeigen

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 08.01.2017, 19:41     Titel:
  Antworten mit Zitat      
\setcounter hat übrigens zwei Argumente. Als erstes Argument ist der Name des Zählers anzugeben. Der Wert ist erst als zweites Argument anzugeben.

mathe42
Forum-Newbie
Forum-Newbie


Beiträge: 9
Anmeldedatum: 08.01.17
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 08.01.2017, 23:48     Titel:
  Antworten mit Zitat      
Also im Grunde möchte ich eine Mathematische Funktion als Befehl darstellen (Also imgrunde will ich f(x) mit verschiedenen x Berechnen...)

Als vereinfachtes Beispiel:

Code • Öffne in Overleaf

\newcounter{foo}
\newcomand{\function}[1]{
   %Setzte foo auf #1
   \setcounter{foo}{#1}
   \addtocounter{foo}{\value{foo}}
   \thefoo
}
 


Wäre jetzt f(x)=2*x

(in Wirklichkeit ist das Problem deutlich komplexer)


EDIT:
Hier mal ein kleines Beispiel wie ich das jetzt umgesetzt habe (eine der einfachen Dinge). Wenn ich mein Ziel ansehe ist das leider nix...

Code • Öffne in Overleaf

\documentclass{report}

\newcounter{r}
\setcounter{r}{0}
\newcounter{m}
\setcounter{m}{0}

\newcommand{\Rest}{    
    \ifnum\value{r
}<\value{m}
        \ther
    \else
        \addtocounter{r}{-\value{m}}    
        \Rest
    \fi
}
\begin{document}
   \setcounter{m}{2}
   \setcounter{r}{6}
   \Rest
\end{document}


Mich würde also dennoch eine Möglichkeit das umzusetzen Interessieren...
Private Nachricht senden Benutzer-Profile anzeigen

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.01.2017, 09:11     Titel:
  Antworten mit Zitat      
Funktionen berechnen und deren Wert ausgeben, geht beispielsweise mit den mathematischen Fähigkeiten von Paket auf CTANpgf bzw. Paket auf CTANpgfplots sehr schön. Als Tabelle ausgeben wäre dann beispielsweise mit Paket auf CTANpgfplotstable möglich. Dabei stehen einem auch Schleifenkonstrukte zur Verfügung.

Zu deinem Beispiel: Du kannst m und r natürlich über Argumente von \Rest setzen, wobei es ggf. sinnvoll ist dann für die Rekursion eine interne Anweisung zu verwenden, also etwas wie:
Code • Öffne in Overleaf
\makeatletter
\newcommand*{\Rest}[2]{\setcounter{r}{#1}\setcounter{m}{#2}\@Rest}
\newcommand{\@Rest}{%  
    \ifnum\value{r}<\value{m}
        \ther
    \else
        \addtocounter{r}{-\value{m}}%
        \expandafter\@Rest
    \fi
}\makeatother

Man könnte für die Schleife aber auch einfach \@whilenum aus dem LaTeX-Kern verwenden und so die Rekursion verstecken.

Ob das alles für dein Ziel nix ist, kann ich natürlich nicht beurteilen, da ich dazu zu wenig Informationen über das Ziel habe.

mathe42
Forum-Newbie
Forum-Newbie


Beiträge: 9
Anmeldedatum: 08.01.17
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.01.2017, 17:31     Titel:
  Antworten mit Zitat      
Danke für die Antwort ich hab das jetzt hinbekommen Wink
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 - 2017 goLaTeX.de