\newcomment für beliebige Anzahl an Argumenten?

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: \newcomment für beliebige Anzahl an Argumenten?

von Bartman » Di 21. Mai 2019, 23:11

Die Vorlagen für das folgende Beispiel stammen von user31729 und egreg:
\documentclass{article}

\usepackage{xparse}
\usepackage{amsmath}

\ExplSyntaxOn
\NewDocumentCommand{\vektor}{ sm }
{
  \begin{pmatrix}
  \split_vector_row:n { #2 }
  \end{pmatrix}
}
\cs_new:Nn \split_vector_row:n
{
  % split the input at commas
  \seq_set_split:Nnn \l_tmpa_seq { , } { #1 }
  % deliver the items separated by &
  \seq_use:Nn \l_tmpa_seq { & }
}
\ExplSyntaxOff

\begin{document}
\begin{align*}
\vektor{1,2}       
&= 
\begin{pmatrix} 
1 & 2 
\end{pmatrix}\\
\vektor{1,2,3,4,5} 
&= 
\begin{pmatrix} 
1 & 2 & 3 & 4 & 5 
\end{pmatrix}
\end{align*}
\end{document}

von Gast » Di 21. Mai 2019, 20:45

\newcomment für beliebige Anzahl an Argumenten?

von RelativerNeuling » Di 21. Mai 2019, 19:55

Hallo liebes Forum :),

ich habe zu folgender Frage leider keine Antwort im Internet gefunden. Wahrscheinlich weil es nicht geht, aber ich will es nicht unversucht lassen.

Sagen wir, ich definiere
\newcommand{\vektor}{\begin{pmatrix} #1 && #2 &&... && #9}\end{pmatrix}
ohne die Anzahl an Argumenten (kleinergleich 9).
Kann ich LaTeX also mitteilen "rechne dir selber wieviele Argumente du hast und bilde einen Zeilenvektor"?
Die Eingabe
\vektor{1}{2}
ergibt mir also (1 2), während mir
\vektor{1}{2}{3}{4}{5}
den Vektor (1 2 3 4 5) ergibt?

Geht soetwas?
Danke schonmal und liebe Grüße
RN

Nach oben