DieterH
22-12-2007, 01:12
Für das Erstellen einer Liste von Mathematik-Aufgaben mit Lösungen möchte ich nur eine einzige LaTeX-Datei pflegen. Ich definierte einen Makro
% #1: Nummer der Aufgabe
% #2: Text der Aufgabe
% #3: Text der Lösung
\newcommand{\matheAufgabe}[3]{%
\begin{minipage}[]{\linewidth}
\parbox[t][][l]{\lenA}{#1}\hfill
\parbox[t][][l]{\lenB}{#2}\hfill
% Falls Lösung gedruckt werden soll, das Kommentarzeichen in der nächsten
% Zeile wegnehmen
% #3
\vspace*{1cm}
\end{minipage}
}
1. Fehler
Der Makro funktioniert jedoch nicht immer. Kommt im Parameter #2 eine Mathematik-Umgebung wie z.B. \begin{displaymath}...\end{displaymath} vor, tritt der Fehler:
! LaTeX Error: Bad math environment delimiter.
auf. Einfache Umgebung wie z.B. „\begin{math}...\end{math} werden akzeptiert.
2.Fehler
Entferne ich das Kommentarzeichen vor dem #3, erhalte ich ebenfalls den obigen Fehler, da im Text der Lösung Mathe-Umgebungen vorkommen.
FRAGEN
1. Was mache ich falsch? Was muss im Makro wie geändert werden, damit er wunschgemäss funktioniert?
2. Wie sieht ein „if“-Konstrukt im Makro aus, damit ich durch Setzen einer Variablen (z.B. \def\PrintSolutions 0 (oder 1) das Ausdrucken der Lösung unmittelbar an die Aufgabenstellung unterbinden bzw. auslösen kann?
Danke
Gruss
Dieter
% #1: Nummer der Aufgabe
% #2: Text der Aufgabe
% #3: Text der Lösung
\newcommand{\matheAufgabe}[3]{%
\begin{minipage}[]{\linewidth}
\parbox[t][][l]{\lenA}{#1}\hfill
\parbox[t][][l]{\lenB}{#2}\hfill
% Falls Lösung gedruckt werden soll, das Kommentarzeichen in der nächsten
% Zeile wegnehmen
% #3
\vspace*{1cm}
\end{minipage}
}
1. Fehler
Der Makro funktioniert jedoch nicht immer. Kommt im Parameter #2 eine Mathematik-Umgebung wie z.B. \begin{displaymath}...\end{displaymath} vor, tritt der Fehler:
! LaTeX Error: Bad math environment delimiter.
auf. Einfache Umgebung wie z.B. „\begin{math}...\end{math} werden akzeptiert.
2.Fehler
Entferne ich das Kommentarzeichen vor dem #3, erhalte ich ebenfalls den obigen Fehler, da im Text der Lösung Mathe-Umgebungen vorkommen.
FRAGEN
1. Was mache ich falsch? Was muss im Makro wie geändert werden, damit er wunschgemäss funktioniert?
2. Wie sieht ein „if“-Konstrukt im Makro aus, damit ich durch Setzen einer Variablen (z.B. \def\PrintSolutions 0 (oder 1) das Ausdrucken der Lösung unmittelbar an die Aufgabenstellung unterbinden bzw. auslösen kann?
Danke
Gruss
Dieter