Das folgende Beispiel, in dem die Zahlen von 1 bis 5 einmal vorwärts und einmal rückwärts ausgegeben werden sollen, führt zu vielen Fehlermeldungen, obwohl ich mich m. E. an die Beschreibung des Open in Online-Editor
\documentclass{article} \usepackage{expl3} \usepackage{xparse} \ExplSyntaxOn \cs_new:Npn \zahlen_vorwaerts:n #1 { \cs_set:Npn \zahl_ausgeben:n #1 {#1} \int_step_function:nnnN {1} {1} {#1} \zahl_ausgeben:n } \cs_new:Npn \zahlen_rueckwaerts:n #1 { \cs_set:Npn \zahl_ausgeben:n #1 {#1} \int_step_function:nnnN {#1} {-1} {1} \zahl_ausgeben:n } \NewDocumentCommand \Vorwaerts {m} { \zahlen_vorwaerts:n {#1} } \NewDocumentCommand \Rueckwaerts {m} { \zahlen_rueckwaerts:n {#1} } \ExplSyntaxOff \begin{document} \Vorwaerts{5} \Rueckwaerts{5} \end{document} gefragt 21 Mai '16, 22:58 Cletus |
Wenn Du eine Funktion in einer Funktion definierst, musst Du die Open in Online-Editor
\cs_new_protected:Npn \zahlen_vorwaerts:n #1 { \cs_set:Npn \zahlen_ausgeben:n ##1 {##1} \int_step_function:nnnN {1} {1} {#1} \zahlen_ausgeben:n } Was geschieht, wenn man das nicht macht? Mit Deiner Definition wird aus Open in Online-Editor
\cs_set:Npn \zahl_ausgeben:n 5 {5} \int_step_function:nnnN {1} {1} {5} \zahl_ausgeben:n Das bedeutet, Open in Online-Editor
\cs_set:Npn \zahlen_ausgeben:n #1 {#1} \int_step_function:nnnN {1} {1} {5} \zahlen_ausgeben:n Beachte, dass ich hier Auf der anderen Seite: wenn die Zahlen ein einheitliches Format haben sollen, dann wäre sowieso zu empfehlen, die Ausgabefunktion separat zu definieren: Open in Online-Editor
\documentclass{article} \usepackage{expl3} \usepackage{xparse} \ExplSyntaxOn \cs_new:Npn \zahlen_ausgeben:n #1 {#1} \cs_new:Npn \zahlen_vorwaerts:n #1 { \int_step_function:nnnN {1} {1} {#1} \zahlen_ausgeben:n } \cs_new:Npn \zahlen_rueckwaerts:n #1 { \int_step_function:nnnN {#1} {-1} {1} \zahlen_ausgeben:n } \NewDocumentCommand \Vorwaerts {m} { \zahlen_vorwaerts:n {#1} } \NewDocumentCommand \Rueckwaerts {m} { \zahlen_rueckwaerts:n {#1} } \ExplSyntaxOff \begin{document} \Vorwaerts{5} \par \Rueckwaerts{5} \end{document} beantwortet 22 Mai '16, 10:39 cgnieder |