Suche…


Gegendarstellung, Initialisierung und Ausdruck als PDF

Es ist möglich, Integer-Variablen mit Latex zu verwenden. Um eine neue Variable zu erstellen, benötigen wir den Befehl \newcounter{name} , wobei name der Name des neuen Zählers ist. Der name darf nur Buchstaben enthalten. Dieser Befehl erstellt eine neue mit dem Namen \thename . Mit diesem Befehl können wir drucken name Variable auf das Papier. Der Anfangswert von name ist 0. Um "name" zu bewerten, können Sie \setcounter{name}{n} wobei n eine ganze Zahl ist. \value{name} ist eine Funktion, die den Wert von name zurückgibt.

\documentclass{article}
\begin{document}
\newcounter{num}                    %new counter, initial value is 0
\thenum                             %print 0
\setcounter{num}{3}                 %set num to 3
\thenum                             %print 3
\newcounter{number}
\setcounter{number}{\value{num}}    %set number to value of num
\thenumber                          %print 3

Latex provides some other formats to print a number.

Other types of printing:

\arabic{num}\\
\Roman{num}\\ %→ I, II, III, IV, . . . (num = 1, 2, 3, . . . )
\roman{num}\\ %→ i, ii, iii, iv, . . . (num = 1, 2, 3, . . . )
\Alph{num}\\  %→ A, B, C, D, . . . (num = 1, 2, 3, . . . , 26)
\alph{num}\\  %→ a, b, c, d, . . . (num = 1, 2, 3, . . . , 26)
\fnsymbol{num}\\ %→ ∗, †, ‡, §, ¶, k, ∗∗, ††, ‡‡ (num = 1, 2, 3, . . . , 9)
\end{document}

Geben Sie hier die Bildbeschreibung ein

Operationen mit Zählern

Dieses Beispiel zeigt, wie mathematische Operationen mit Zählern verwendet werden. Es kann für Schleifen in Latex nützlich sein.

Zusatz: \addtocounter{num}{n}

Dieser Befehl addiert n zu num , wobei num ein Zähler und n eine positive ganze Zahl ist.

Subtraktion: \addtocounter{num}{-n}

Dieser Befehl subtrahiert n von num , wobei num ein Zähler und n eine positive ganze Zahl ist.

Multiplikation: \multiply\value{num} by n

Dieser Befehl multipliziert num mit n , wobei num ein Zähler und n eine ganze Zahl ist.

Division \divide\value{num} by n

Dieser Befehl teilt num durch n und erhält den ganzzahligen Teil des Quotienten ( num ist ein Zähler und n ist eine ganze Zahl)

\documentclass{article}
    \begin{document}
    \newcounter{num}
    \setcounter{num}{3}
    \addtocounter{num}{10}
    \thenum\\%prints 13
    \addtocounter{num}{-3}
    \thenum\\%prints 10
    \stepcounter{num}
    \thenum\\%prints 11
    \multiply\value{num} by \value{num}
    \thenum\\%prints 121
    \multiply\value{num} by 2
    \thenum\\%prints 242
    \divide\value{num} by 60
    \thenum%prints 4
\end{document}

\newcommand{num} deklariert den Zähler. \setcounter{num}{3} setzt den num-Wert auf 3.

\addtocounter{num}{10} fügt 10 zu num hinzu.

\addtocounter{num}{-3} subtrahiere 3 von num.

\stepcounter{num} fügt 1 zu num hinzu

\multiply\value{num} by \value{num} Quadraten num.

\multiply\value{num} by 2 verdoppelt num.

\divide\value{num} by 60 dividiert num durch 60 und erhält den ganzzahligen Teil.

Das Ergebnis des Codes: 13 \\ 10 \\ 11 \\ 121 \\ 242 \\ 4

(\\ symbolisiert neue Zeile)

Das intcalc-Paket fügt einige andere Ganzzahloperationen hinzu, z. B. mod, pow, sng, abs, inv ...

intcalc_package.pdf

Wenn Aussagen

In Latex können wir integrierte Befehle verwenden, um Code auszuführen, unabhängig davon, ob die Bedingungen erfüllt sind oder nicht.

Vergleichen von zwei Ganzzahlen: \ifnum\value{num}>n {A} \else {B}\fi

Dieser Code führt A if num> n else B aus. Wir können> durch <und = ersetzen.

Wenn eine Zahl ungerade ist: \ifodd\value{num} {A}\else {B}\fi

Wenn num ungerade ist, wird A sonst B ausgeführt.

Wenn mit Bedingung: \ifthenelse{condition}{A}{B}

Wir müssen das ifthen-Paket laden, um diesen Befehl verwenden zu können. Wenn die Bedingung erfüllt ist, wird A sonst B ausgeführt.

Es ist möglich, komplexe Bedingungen mit \( \) , \AND , \OR , \NOT zu erstellen.

Zum Beispiel: \ifthenelse{\(\NOT 4<2 \OR 4>11\)\AND\isodd{4}}{A}{B}

Dieser Code schreibt "B" auf der Seite. \NOT 4<2 ist wahr und 4>11 ist falsch. Wenn wir eine falsche und eine wahre Aussage mit "ODER" verbinden, ist das Ergebnis wahr. Also ist \(\NOT 4<2 \OR 4>11\) wahr. \isodd{4} ist falsch, da 4 gerade ist. Eine falsche und eine wahre Aussage in Verbindung mit "AND" ist falsch, daher ist die Ausgabe B.

Ein Beispielcode:

\documentclass{article}
\usepackage{ifthen}
\begin{document}
    \newcounter{num}
    \setcounter{num}{10}

    If num$>$100 then the next sentence will be "Num is large." else "Num is small."

    Num is \ifnum \value{num}>100 {large} \else {small}.

    If num is odd then the next sentence will begin with "Odd" if not then with "Even"

    \ifodd \value{num} {Odd} \else {Even} numbers are cool.

    If (num$>$3 and (1$<$0 or num$=$10)) is true then the next sentence will be "True." else "False."

    \ifthenelse{\value{num}>3\AND\(1<0 \OR \value{num}=10\)}{True.}{False.}


\end{document}

Ergebnis

Loops - Dinge wiederholen

Wir können Schleifen in Latex erstellen. Sie sind ähnlich, aber nicht so anpassbar wie Schleifen in anderen Programmiersprachen. Eine Alternative zur Verwendung von Loops sind @loops. Wenn wir einen Befehl verwenden, der im Namen "@" enthält, müssen wir ihn zwischen \makeatletter und \makeatother . Sie dürfen nicht in einem Makro verwendet werden, das eine neue Definition beschreibt.

Falsch:

\def\is#1#2{\makeatletter\@ifstar{#1}{#2}\makeatother

Recht:

\makeatletter\def\is#1#2{\@ifstar{#1}{#2}}\makeatother

@für Schleife: \@for\command:={list}\do{commands}

Beispiel :

\makeatletter
\@for\sun:={rising,setting}\do{The sun is \sun.}
\makeatother

Es wird folgender Text erstellt: Die Sonne geht auf. Die Sonne geht unter.

@Whilenum-Schleife: \@whilenum condition\do{commands}

Beispiel :

\makeatletter
\newcounter{int}
\@whilenum\value{int}<10\do
{\stepcounter{int}\ifthenelse{\isodd{\value{int}}}{\theint}{}}
\makeatother

Dieser Code schreibt ungerade Zahlen von 1 bis 9.

"loop repeat" Schleife: \loop {commands} \ifnum condition \repeat

Führt Befehle aus, bis die Bedingung erfüllt ist.

Beispiel

\setcounter{int}{1}
\loop
\theint
\addtocounter{int}{2}
\ifnum \value{int}<10
\repeat

Dieser Code funktioniert genauso wie die @whilenum-Schleife.

Ein Beispielcode:

\documentclass{article}
\usepackage{ifthen}
\usepackage{amsmath} %\text{} command needs this package
\begin{document}
    Demonstration of @for loop:

    \makeatletter
    \@for\sun:={rising,setting}\do{The sun is \sun. }
    \makeatother

    \newcounter{int}

    @whilenum loop:
    
    \setcounter{int}{0}
    \makeatletter
    \@whilenum\value{int}<20\do
    {\stepcounter{int}\ifthenelse{\isodd{\value{int}}}{\theint\text{ }}{}}
    \makeatother
    
    "loop repeat" loop:
    
    \setcounter{int}{1}
    \loop
    \theint
    \text{ }\addtocounter{int}{2}\ifnum\value{int}<20
    \repeat
\end{document}

Ergebnis

Verwenden von Schleifen in Tikz

Loops sind in Tikz nützlich.

Der folgende Code zeichnet eine Uhr ohne Zahlen:

\documentclass{article}
\usepackage{ifthen}
\usepackage{intcalc}
\usepackage{tikz}
\newcounter{num}

\begin{document}       
\begin{tikzpicture}
    \makeatletter
    \setcounter{num}{1}
    \newcounter{angle}
    \draw (0,0) circle (3cm);
    \@whilenum\value{num}<13\do{
    \setcounter{angle}{360}
    \multiply\value{angle} by \value{num}
    \divide\value{angle} by 12
    \ifnum \intcalcMod{\value{num}}{3}=0{
    \draw[line width=4pt] (\theangle:2cm) -- (\theangle:3cm);    }\else
    {
    \draw[line width=1pt] (\theangle:2.3cm) -- (\theangle:3cm);
    }\fi
    \addtocounter{num}{1}
    }
    \makeatother
\end{tikzpicture}
\end{document}

Das Ergebnis:

Uhr



Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow