alignat rechtsbündig, Gleichheitszeichen untereinander

Formelsatz für Mathematik, Naturwissenschaften und Technik


oaahy
Forum-Newbie
Forum-Newbie
Beiträge: 9
Registriert: Sa 8. Nov 2014, 19:54

alignat rechtsbündig, Gleichheitszeichen untereinander

Beitrag von oaahy »

Ich möchte folgende Gleichungen ausrichten, so dass die Gleichheitszeichen und der 'mod' untereinanderstehen, aber innerhalb sollen die Zahlen rechtsbündig sein.
Ich habe Folgendes versucht, ich hoffe meine Intention ist verständlich
\begin{alignat*}{6}
S_1&=4\\
S_2&=S_1^2-2 =& 16-2 = & 14 && \equiv & 14 && \mod{31}\\
S_3&=S_2^2-2 =& 196-2 = & 194 && \equiv & 8 && \mod{31}\\
S_4&=S_3^2-2 =& 64-2 = & 62 && \equiv & 0 && \mod{31}
\end{alignat*}
Alles was hinter einem einfachen & soll rechtsbündig sein, bis das Gleichheitszeichen kommt.
Meine Problem ist, dass zwar beim ersten Teil '16-2' '196-2' und '64-2' die Rechtsbündigkeit stimmt, aber bei '196-2' kein Abstand zwischen Gleichheitszeichen und '196-2' herrscht.
Ebenso wird der nächste Teil mit '14' '194' und '62' nicht rechtsbündig angeordnet.
Der letze Teil mit '14' '8' und '0' wird zwar wieder rechtbündig angeordnet, aber es gibt wieder keinen Abstand zwischen dem Gleichheitszeichen und der Zahl '14'.

Ich bin mir nicht bewusst, wo mein Fehler liegt. Denke aber es ist ein grundsätzlicher Fehler, da mir die Syntax in der align-Umgebung durch die & nicht ganz klar ist.

Vielen Dank

esdd
Forum-Meister
Forum-Meister
Beiträge: 2561
Registriert: So 7. Feb 2010, 16:36

Beitrag von esdd »

Die alignat Umgebung besteht wie die align Umgebung aus rl Spaltenpaaren, d.h. die erste ist rechtsbündig, die zweite linksbündig, die dritte wieder rechtsbündig etc. Das Argument von alignat gibt dabei die Anzahl der r Spalten an.

Damit der Abstand nach den Gleichheitszeichen stimmt, füge zwischen diesem bzw. dem \equiv und dem dahinter stehenden & ein Paar geschweifte Klammern {} ein.

\documentclass{scrartcl}
\usepackage{amsmath}
\begin{document}
\begin{alignat*}{4} 
   S_1&=4\\ 
   S_2&=S_1^2-2 ={}& 16-2 &={} & 14 & \equiv {}& 14 & \mod{31}\\ 
   S_3&=S_2^2-2 ={}& 196-2 &={} & 194 & \equiv {}& 8 & \mod{31}\\ 
   S_4&=S_3^2-2 ={}& 64-2 &={}& 62 & \equiv {}& 0 & \mod{31} 
\end{alignat*}
\end{document}
Gruß
Elke

oaahy
Forum-Newbie
Forum-Newbie
Beiträge: 9
Registriert: Sa 8. Nov 2014, 19:54

Beitrag von oaahy »

Schonmal vielen Dank dafür, funktioniert perfekt.
Jetzt tritt aber ein weiteres Problem auf wenn die Indizes des S auch zwei Ziffern haben. Ich bräuchte somit die erste Spalte linksbündig, dann die Gleichheitszeichen auch linksbündig, dann rechtsbündig und so weiter.
\begin{alignat*}
S_8&=S_7^2-2 ={}& 1\,877^2-2 &={} & 3\,523\,127 & \equiv{} & 240 & \mod{2047}\\
S_9&=S_8^2-2 ={}& 240^2-2 &={} & 57\,598 & \equiv{} & 282 & \mod{2047}\\
S_{10}&=S_9^2-2 ={}& 282^2-2 &={} & 79\,522 & \equiv{} & 1\,736 & \mod{2047}
\end{alignat*}
Also ich brauche den Code wie hier, nur dass die S_i linksbündig sind.

Ich habe schon versucht eine "leer"Spalte einzufügen, das hat aber leider nicht so funktioniert.
Gibt es eine andere Umgebung, in der ich selbst bestimmen kann, was rechtsbündige Spalten und wann linksbündige Spalten sind?
Ich meine mich zu erinnern, dass dies bei Table ging.

esdd
Forum-Meister
Forum-Meister
Beiträge: 2561
Registriert: So 7. Feb 2010, 16:36

Beitrag von esdd »

Du musst Dir doch nur überlegen, was rechts und was links ausgerichtet werden soll. Wenn Du am Anfang zwei linksbündige Spalten brauchst, dann füge je eine leere rechte vor der ersten und zwischen den beiden ein:

\documentclass{scrartcl} 
\usepackage{amsmath} 
\begin{document} 
\begin{alignat*}{5} 
 &S_8&&=S_7^2-2 ={}& 1\,877^2-2 &={} & 3\,523\,127 & \equiv{} & 240 & \mod{2047}\\ 
&S_9&&=S_8^2-2 ={}& 240^2-2 &={} & 57\,598 & \equiv{} & 282 & \mod{2047}\\ 
& S_{10}&&=S_9^2-2 ={}& 282^2-2 &={} & 79\,522 & \equiv{} & 1\,736 & \mod{2047} 
\end{alignat*}
\end{document}
Alternativ kannst Du auch array verwenden und die Spalten und deren Abstände selbst definieren.

Bitte erstelle immer vollständige Bespiele, die lauffähig sind und teste diese. In deinem letzten fehlte u.a. das Argument von alignat*.

Gruß
Elke

oaahy
Forum-Newbie
Forum-Newbie
Beiträge: 9
Registriert: Sa 8. Nov 2014, 19:54

Beitrag von oaahy »

Vielen Dank, verstehe jetzt auch wie die Syntax funktioniert.

Antworten