PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : \ref{sec:a} bei mehrfachen Input der Datei



safran
19-06-2013, 10:01
Hi,

habe mich hier soeben angemeldet. Hallo zusammen.
Die Überschrift ist etwas verwirrend, ich erkläre worum es geht.

Ich arbeite an einem größeren tex-Arbeitsheft für Schüler.
Es hat 21 Kapitel, und die Durchnummerierung / -strukturierung erfolgt nach Kapiteln
(section, subsection usw.)

Am Ende der Kapitel kommt oft der gleiche Fragenkomplex, den ich über eine eigene fragen_ende.tex Datei einfüge (Befehl input):

4.12 Wo hast Du dich schwergetan?
4.13 Worin glaubst Du noch etwas mehr Übung zu brauchen?
4.14 Schreibe nun nocheinmal zusammenfassend Deinen Arbeitsbericht

Am nächsten Tag (im Nächsten Kapitel) referenziere ich dann auf eine Frage

5.2 Lese Dir die Antworten, die Du gestern auf die Frage 4.13 durch und formuliere Dir selbstständig 3 Aufgaben diesbezüglich.

Gerne würde ich hier das 4.13 automatisiert einfügen lassen.

Oft lässt sich dies ja mit dem
\label{sec:wo_brauchst_du_mehr_uebung} - Befehl

und dem \ref{sec:wo_braucht_du_mehr_uebung} - Befehl realisieren,

bei mir wird allerdings jedesmal aufs Neue mit dieser Methode \label definiert.

Mache ich es so steht überall im Dokument die gleiche Kapitelnummer, und zwar ist das die letzte die der Kompiler beim Einlesen gesehen hat.

2. Gibt es eine bessere Lösung für diesen Fall, sodass mit Input und ref gearbeitet wird, und dabei richtig referenziert wird?
3. vielleicht kann ich auch eine Zählvariable die immer +1 macht, anstelle von "wo_brauchst_du_mehr_uebung" verwenden ?

Ich hoffe das Anliegen ist klar geworden…

Vielen Dank

u_fischer
19-06-2013, 10:10
\documentclass[12pt,a4paper]{scrbook}
\begin{document}
\chapter{A}
\section{blub}
\label{A:\the\value{chapter}}

\chapter{B}
siehe \ref{A:\the\numexpr\the\value{chapter}-1}


\chapter{C}
\section{blub}
\label{A:\the\value{chapter}}

\chapter{D}
siehe \ref{A:\the\numexpr\the\value{chapter}-1}

\end{document}

safran
19-06-2013, 10:40
Wow!

Vielen Herzlichen Dank!
Konnte den Beispielcode sofort übersetzen und anwenden.

Top professionell und extrem schnell geholfen.

Auch top, das Latex über "Dynamische-Variablen" verfügt.
Annahme:
Der Teil vor dem Doppelpunkt im Variablennamen ist wohl soetwas wie ein dynamischer Array, dem jeweils an einer Nummer ein "Stringwert" zugewiesen wird.

Nocheinmal vielen Dank! Das es soeinfach und schnell geht hätte ich nicht gedacht.

safran
19-06-2013, 10:44
wo lässt sich denn hier im Forum der Thread als gelöst markieren?

u_fischer
19-06-2013, 11:06
Der Teil vor dem Doppelpunkt im Variablennamen ist wohl soetwas wie ein dynamischer Array, dem jeweils an einer Nummer ein "Stringwert" zugewiesen

Nein. Der Teil (und auch der Doppelpunkt) ist völlig beliebig (und optional). Du kannst in \label einfach irgendwelche Macros benutzen. Sie müssen nur expandierbar sein. Ich habe halt eine Zahl genommen, weil ich ja damit rechnen musste. Ich habe vor die Zahl was geschrieben, damit der label einen halbwegs eindeutigen Namen bekommen - und um zu zeigen, dass man festen Text und variable Zahl problemlos mischen kann.