Hallo,

ich schreibe gerade eine Aufgabensammlung mit Lösungen. Die Aufgaben verpacke ich dabei in eine Umgebung (\begin{aufgabe}...\end{aufgabe}). Das zugehörige Package ist amsthm, Code für die Umgebung ist:

Open in writeLaTeX
   \newtheoremstyle{bspstyle}
    {\internalindent}
    {\internalindent}{
        \addtolength{\leftskip} {0pt}                    
        \addtolength{\rightskip}{0pt}
    }
    {0pt}{}{}
    {\newline}
    {\textbf{#1} #2 \quad  \textit{#3}}
    \theoremstyle{thmstyle}
\newtheorem{tmp_satz}{Satz}[section]
\newtheorem{tmp_kor}    [tmp_satz]{Korollar}
\newtheorem{tmp_lemma}[tmp_satz]{Lemma}
\newtheorem{tmp_prop}   [tmp_satz]{Proposition}
\newtheorem*{tmp_satz*}{Satz}

\theoremstyle{defstyle}
\newtheorem{tmp_def}[tmp_satz]{Definition}

    \theoremstyle{bspstyle}
    \newtheorem{tmp_bsp}[tmp_satz]{Aufgabe}

Ich würde jetzt gerne am Ende alle Aufgaben einmal gesammelt auf einer bzw. mehreren ausgeben, quasi als eine Art Übersicht über alle Aufgaben. Ist das umzusetzen? Wenn möglich natürlich ohne händisches Übertragen aller Aufgaben? Und falls ja, können die Originalnummerierungen beibehalten werden (nicht dass Aufgabe 1.1 dann auf einmal die Nummer 18.1 bekommt)?

Edit: Minimalbeispiel

Open in writeLaTeX
\documentclass[a4paper,                         
                             12pt,                                                                  
                             DIV=15,                            
                             headsepline,                   
                             twoside,                       
                             footnotes = multiple,
                             toc = index,                   
                             numbers = auto,            
                             pagesize                           
                            ]{scrbook}  
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage{amsthm} 
\usepackage{needspace}

\newlength{\internalindent}
\setlength{\internalindent}     % defines how much text and lists are intended
    {.5cm}

\newtheoremstyle{thmstyle}
    {\internalindent}
    {\internalindent}{
        \addtolength{\leftskip} {\internalindent}                    
        \addtolength{\rightskip}{\internalindent}
    }
    {0pt}{}{}
    {\newline}
    {\textcolor{thm_color}{\textbf{} } \quad  \textbf{}}

\newtheoremstyle{bspstyle}
    {\internalindent}
    {\internalindent}{
        \addtolength{\leftskip} {0pt}                    
        \addtolength{\rightskip}{0pt}
    }
    {0pt}{}{}
    {\newline}
    {\textbf{#1} #2 \quad  \textit{#3}}

\theoremstyle{thmstyle}
\newtheorem{tmp_satz}{Satz}[section]

\theoremstyle{bspstyle}
\newtheorem{tmp_bsp}[tmp_satz]{Aufgabe}
\newtheorem*{tmp_bsp*}{Beispiel}

\newenvironment{aufgabe}[1][]{  
    %\pushQED{\bspendmark}
    \needspace{4\baselineskip}
    \begin{tmp_bsp}[#1]
}{
    \popQED
    \end{tmp_bsp}
    \noindent\ignorespacesafterend
}

\begin{document}
\chapter{Erstes Kapitel}
\begin{aufgabe}Eine erste Aufgabe\end{aufgabe}
\begin{aufgabe}Eine zweite Aufgabe\end{aufgabe}
\section{Erstes Unterkapitel}
\begin{aufgabe}Eine Aufgabe in einem Unterkapitel\end{aufgabe}
\begin{aufgabe}Noch eine Aufgabe in einem Unterkapitel\end{aufgabe}
\subsection{Tiefer geschachteltes Unterkapitel}
\begin{aufgabe}Noch eine Aufgabe\end{aufgabe}
\subsection{Weiter geschachtelt}
\begin{aufgabe}Eine weitere Aufgabe\end{aufgabe}
\section{Zweites Unterkapitel}
\begin{aufgabe}Und eine weitere Aufgabe\end{aufgabe}
\chapter{Zweites Kapitel}
\begin{aufgabe}Eine Aufgabe in einem anderen Kapitel\end{aufgabe}
\end{document}

gefragt 25 Jun '14, 21:32

Iorek's gravatar image

Iorek
43223
Akzeptiert-Rate: 0%

bearbeitet 26 Jun '14, 00:20

Hallo, Du bekämst sicher schneller Antworten, wenn Du Dein Beispiel lauffähig editieren würdest.

(25 Jun '14, 22:28) cis
1

@Iorek Willkommen auf der TeXwelt! Ja, so ein kleines Komplettbeispiel hätte ich glatt getestet, so ist es ein bisschen theoretisch. Das Paket thmtools z.B. bietet \listoftheorems für eine Übersicht, und geht mit amsthm.

(25 Jun '14, 22:48) stefan ♦♦

Wenn du Aufgabenblätter erstellen willst gibt es auch schon fertige Lösungen, beispielsweise das Paket exsheets oder die Klasse exam.

(25 Jun '14, 23:03) Johannes

Ich dachte, die Frage wäre eh theoretischer Natur, daher habe ich sie erst einmal schlicht und ohne Minimalbeispiel gehalten. Ich habe jetzt mal eins erstellt, für den Kommentar ist das zu groß, ich habe es oben dann eingefügt.

@Johannes Es sollen keine Aufgabenblätter werden, sondern eine Aufgabensammlung in Form eines (Lehr-)Buchs.

@stefan Das listoftheorems gibt aber nur die jeweiligen Namen als Liste aus, oder? Ich hätte gerne den gesamten Inhalt, also quasi eine Kopie der Aufgabenstellung.

(26 Jun '14, 00:20) Iorek

@Iorek Stehen zwischen den Aufgaben eventuell Erklärungen/Erläuterungen, welche dann in der »Aufgabenliste« nicht mehr enthalten sein sollen?

(26 Jun '14, 08:39) Johannes

@lorek Falls es Dich interessiert - vll. kannst Du für Deine Aufgabenumgebungen noch dieses heiße Feature gebrauchen: http://texwelt.de/wissen/fragen/6311/wie-setze-ich-einen-gruppierungs-strich-an-eine-theorem-umgebung

Würde dann aber bedeuten, daß Du mit mdframed arbeitest; kannst es Dir ja einfach mal anschauen. Ich wollte schon in die Richtung etwas basteln, aber dann sah ich, daß @Clemens schon eine super Lösung angegeben hat; dann braucht man ja auch nicht mit Gewalt das Rad nochmal neu erfinden.

(26 Jun '14, 11:48) cis
Ergebnis 5 von 6 show 1 more comments

editierte Antwort

Ab v0.14 (28.06.2014) hat exsheets die nötigen Mittel an Bord, um sich eine \listofquestions zu definieren. Der Clou dabei sind die sogenannten question properties, die man sich zum einen selbst definieren kann, und von denen es auch vordefinierte gibt. Eine der vordefinierten Properties ist (ab v0.14) question-body.

Properties kann man abrufen mit

Open in writeLaTeX
\GetQuestionProperty{<eigenschaft>}{<ID>}

exsheets hat außerdem den Befehl \ForEachQuestion{ ... }, bei dem man im Argument mit #1 auf die ID der Fragen zugreifen kann. Verbinden wir das mit \QuestionNumber{<ID>}, das den interpretierten Zähler einer Frage ausgibt, und mit der Paketoption auto-label, die automatisch zu einer Frage ein \label{qu:<ID>} (=> Seitenzahlen) setzt, dann sind wir schon fast am Ziel. Es fehlt noch mit

Open in writeLaTeX
\ExSheetsHeading{<Stil>}{<Name>}{<Nummer>}{<Punkte>}{<Bonus>}{<ID>}

ein Befehl, der zwar undokumentiert ist aber dennoch zur Verfügung steht, und mit dem es möglich ist, exsheets' Überschriftenmechanismus zu verwenden.

Alles zusammengesetzt gibt das dann folgendes:

Open in writeLaTeX
\documentclass{article}
\usepackage[ngerman]{babel}

\usepackage[auto-label]{exsheets}[2014/06/28]
\SetupExSheets{
  counter-within    = section ,
  counter-format    = se.qu ,
  question/name     = Aufgabe ,
}

\NewDocumentCommand\listofquestions{}{%
  \ForEachQuestion
    {%
      \ExSheetsHeading
        {block}               % Überschrifts-Stil
        {Aufgabe}             % Name der Aufgabe
        {\QuestionNumber{##1} (Seite~\pageref{qu:##1})}% Nummer der Aufgabe
        {0}                   % Punkte der Aufgabe
        {0}                   % Bonuspunkte der Aufgabe
        {##1}%                % ID der Aufgabe
      \GetQuestionProperty{question-body}{##1}%
      \par
      \medskip
    }%
}

\usepackage{multicol}

\begin{document}

\section{Erstes Kapitel}
\begin{question}
  Eine erste Aufgabe
\end{question}
\begin{question}
  Eine zweite Aufgabe
\end{question}

\subsection{Erstes Unterkapitel}
\begin{question}
  Eine Aufgabe in einem Unterkapitel
\end{question}
\begin{question}
  Noch eine Aufgabe in einem Unterkapitel
\end{question}

\subsubsection{Tiefer geschachteltes Unterkapitel}
\begin{question}
  Noch eine Aufgabe
\end{question}

\subsubsection{Weiter geschachtelt}
\begin{question}
  Eine weitere Aufgabe
\end{question}

\subsection{Zweites Unterkapitel}
\begin{question}
  Und eine weitere Aufgabe
\end{question}

\clearpage

\section{Zweites Kapitel}
\begin{question}
  Eine Aufgabe in einem anderen Kapitel
\end{question}

\begin{multicols}{2}[\section{Aufgabenübersicht}]
  \listofquestions
\end{multicols}

\end{document}

alt text

alt text

Permanenter link

beantwortet 26 Jun '14, 11:08

cgnieder's gravatar image

cgnieder
22.1k253463
Akzeptiert-Rate: 60%

bearbeitet 28 Jun '14, 18:15

Hallo, wenn die Frage richtig verstehe, geht es darum, zu einer Anzahl Aufgaben kapitelweise ein Aufgabenverzeichnis anzugeben, richtig? Und das geht m.E. auch durchweg mit elementaren Mitteln:

alt text

Open in writeLaTeX
\documentclass{scrreprt} 
      \usepackage{xcolor}
       \pagecolor{green!50!cyan!50!white}    %%%%
\usepackage[T1]{fontenc}
\usepackage{selinput}
\SelectInputMappings{adieresis={ä},  germandbls={ß}}
\usepackage[ngerman]{babel}
\usepackage{microtype}
\usepackage{amsmath, amssymb}

\usepackage[tikz]{mdframed}
\usepackage{ntheorem}
 \theorembodyfont{\upshape}

\newmdtheoremenv [  backgroundcolor=green!50!cyan!50!white, %%%%
  hidealllines=true,leftline=true,
  linewidth = 1pt,%
  leftmargin = 0,rightmargin = 0,%
  innerrightmargin=0,   innerleftmargin=2.5pt,
  skipabove=\dimexpr\parskip+10pt\relax,
  innertopmargin = 0,splittopskip =0,
  innerbottommargin=0,splitbottomskip=0,
  ntheorem = true ,%
]{aufg}{Aufgabe}[chapter]

\usepackage{multicol}
 \setlength{\columnseprule}{1pt}
\begin{document}
\tableofcontents

\chapter{Ein Aufgabenkapitel}

\section{Ein Abschnitt mit Aufgaben}
\begin{aufg}[Aufgabenname I]
Das hier ist der Aufgabentext ... \par
..... und hier endet der Aufgabentext. 
\end{aufg}

\begin{aufg}[Aufgabenname II]
Das hier ist der Aufgabentext ... \par
..... und hier endet der Aufgabentext. 
\end{aufg}

\section{Ein weiterer Abschnitt mit Aufgaben}

\begin{aufg}[Aufgabenname III]
Das hier ist der Aufgabentext ... \par
..... und hier endet der Aufgabentext. 
\end{aufg}

.....

\addsec{Aufgabenverzeichnis}
\listtheorems{aufg}

\vskip1cm
\verb+alternativ:+ \\

\begin{multicols}{2}[\addsec{Aufgabenverzeichnis}]
\listtheorems{aufg}
\end{multicols}
\end{document}

€dit:

Will man auch noch den Aufgabentext im "Aufgabenverzeichnis" könnte man ansatzweise so oder ähnlich vorgehen. Die Lösung steht allerding auf etwas wackligen Füßen:

· \par kann ich dann, ohne weitere Maßnahmen, nicht in der Aufgabenumgebung machen.

·Den "Seitenstrich" bekomme ich so gerade nimmer hin.

Aber vom Prinzip her könnte man so ansetzen.

alt text

Open in writeLaTeX
\documentclass[a5paper]{scrreprt} 
      \usepackage[top=-1.0cm]{geometry}
      \usepackage{xcolor}
       \pagecolor{green!50!cyan!50!yellow}    %%%%
\usepackage[T1]{fontenc}
\usepackage{selinput}
\SelectInputMappings{adieresis={ä},  germandbls={ß}}
\usepackage[ngerman]{babel}
\usepackage{microtype}
\usepackage{amsmath, amssymb}

\usepackage[tikz]{mdframed}
\usepackage{ntheorem}
 \theorembodyfont{\upshape}

\newmdtheoremenv [  backgroundcolor=green!50!cyan!50!white, %%%%
  hidealllines=true,leftline=true,
  linewidth = 0pt,%
  leftmargin = 0,rightmargin = 0,%
  innerrightmargin=0,   innerleftmargin=2.5pt,
  skipabove=\dimexpr\parskip+10pt\relax,
  innertopmargin = 0,splittopskip =0,
  innerbottommargin=0,splitbottomskip=0,
  ntheorem = true ,%
]{aufg}{Aufgabe}[chapter]

\newcommand{\aufgabe}[2]{\begin{aufg*}[#1] 
#2
\end{aufg*}
\addtheoremline{aufg}{#1 \\
\begin{minipage}{3.0cm}
\footnotesize{#2}
\end{minipage}}
}

\usepackage{multicol}
 \setlength{\columnseprule}{1pt}
\begin{document}
\tableofcontents

\chapter{Ein Aufgabenkapitel}

\section{Ein Abschnitt mit Aufgaben}
\aufgabe{Aufgabenname I}{%
Das hier ist der Aufgabentext ...  und hier endet der Aufgabentext. 
}

\aufgabe{Aufgabenname II}{%
Das hier ist der Aufgabentext ...  und hier endet der Aufgabentext. 
}

\section{Ein weiterer Abschnitt mit Aufgaben}
\aufgabe{Aufgabenname aaa}{%
Das hier ist der Aufgabentext ...  und hier endet der Aufgabentext. 
}

\begin{multicols}{2}[\addsec{Aufgabenverzeichnis}]
\listtheorems{aufg}
\end{multicols}
\end{document}
Permanenter link

beantwortet 27 Jun '14, 20:18

cis's gravatar image

cis
9.5k93459491
Akzeptiert-Rate: 29%

bearbeitet 28 Jun '14, 00:21

@cis Das ist nicht ganz das was ich will. Es sollen nicht nur die Aufgabennummern/Aufgabennamen angegeben werden (Namen vergebe ich dafür auch nicht), es sollen alle Aufgaben inklusive des Aufgabentextes ausgegeben werden.

(27 Jun '14, 21:51) Iorek

Ich habe noch etwas ergänzt.

(27 Jun '14, 23:53) cis
Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs fügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×16

gestellte Frage: 25 Jun '14, 21:32

Frage wurde gesehen: 10,952 Mal

zuletzt geändert: 16 Mai '15, 09:22