Schüler- und Lehrerlösung im gleichen Texfile

Redefinition von Makros, Definition eigener Befehle sowie neuer Umgebungen


gast

Re: Schüler- und Lehrerlösung im gleichen Texfile

Beitrag von gast »

Ich weiß jetzt nicht, welches "obige Beispiel" du genau meinst. Aber zu xsim gibt es ganz viele Beispiele mit Quellcode und Ergebnis-PDF. Zusammen mit der Anleitung zu dem Paket ist das eventuell ein guter Ausgangspunkt.


MH42
Forum-Newbie
Forum-Newbie
Beiträge: 4
Registriert: Sa 2. Mai 2020, 09:06

Re: Schüler- und Lehrerlösung im gleichen Texfile

Beitrag von MH42 »

Ich meinte dieses Beispiel (siehe unten)... Ich bin relativ neu bei Latex um genau das zu tun, was ich weiter oben beschrieben habe: Ein Skript von Word umschreiben in Latex und dabei vermeiden, dass ich immer zwei Versionen erstellen muss (und natürlich die vielen anderen Vorteile von LaTex geniessen). Bei Prüfungen verwende ich die "exam"-klasse ... da kann ich Lösungen ein- und ausblenden ... aber das mit den gleichbleibenden Leerräumen klappt nicht so ganz wie ich es möchte. Das Beispiel im Beitrag (von mir zitiert) sieht so super aus. Und da erwähnt wurde, dass das mit dem xsim-package auch funktionieren würde, hab ich danach gefragt. Ich habe mir die Augen wund gelesen und kann in den Beispielen nicht das finden, was ich dazu brauche. Wen das aber funktioniert, lese ich mich gerne vertiefter ein und stelle meine Prüfungen auf xsim um ... das scheint ja wirklich ein sehr gutes package zu sein ... aber ich verstehe es eben noch nicht so ganz. Und darum frage ich nach Starthilfe ... die Beispiele erschliessen sich nicht so ganz leicht ... zumindest nicht für mich ... das mag aber auch am eher rudimentären englisch meinerseits liegen.
best, MH42

Edit: Ich habe jetzt das passende Beispiel in xsim gefunden ... danke ... das war in den Files zu finden (sogar mit der Bezeichnung dieses Forums) aber ich habe es schlicht nicht gefunden .... Danke schonmal, jetzt arbeite ich daran einmal weiter.

Bartman hat geschrieben:
So 14. Feb 2016, 03:26
\documentclass[fontsize=12pt,parskip=half]{scrartcl}
\usepackage{amsmath, cancel, siunitx, array, rotating}    % Grafik, Mathematik, Brüche kürzen Einheiten, Aufzählung
\usepackage[inline]{enumitem}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}   % Paket, welche Umlaute (z.B. ä) korrekt anzeigt
\usepackage[ngerman]{babel}   % fürs Trennen und z.B. deutsche Überschriften
\usepackage[babel]{microtype}
\usepackage{tikz}    % Grid
\usepackage{multicol, framed}   % Textspalten, Farbe, Rahmen
\usepackage[hdivide={3.0cm, 16cm, }, vdivide={2.2cm, ,2.2cm}]{geometry}
\usepackage[bitstream-charter]{mathdesign}

\sisetup{
	locale=DE,
   per-mode=fraction
}

%\parindent0pt   
\newboolean{loesung} \newenvironment{gitterLoesung}[7]{ \ifthenelse{\boolean{loesung}} { \vspace{#5} \fcolorbox{black!50!white}{black!12!white}{ \parbox[c][#4][c]{#3}{ \color{blue} \large #7 } }\vspace{#6}} { \begin{tikzpicture}[x=1mm, y=1mm, semitransparent] \def\breite{#1} % Breite in mm, Vielfaches von 4 (mm) wählen \def\hoehe{#2} % Höhe in mm, Vielfaches von 4 (mm) wählen \draw[step=4mm, line width=0.15mm, black!60!white] (0,0) grid (\breite,\hoehe); % 0 - (30) - 100 entspricht Graustufe \end{tikzpicture} }}
\begin{document}Für die \textbf{Schülerausgabe} sollen Häuschen (Grid) mit Seitenlänge \SI{4}{\mm} gesetzt werden.\vskip1ex \setboolean{loesung}{true} % kann auf true oder false gesetzt werden \gitterLoesung{160}{80}{156mm}{77mm}{0mm}{7mm}{Hier soll die Lösung stehen: $E=m\cdot c^2$.} Für die \textbf{Lehrerausgabe} sollen statt Häuschen die Lösung in z.\,B. einer Box geschrieben werden. Dafür soll die Lösung (bezogen auf dieses Beispiel) auch in einer Box mit der exakten Breite \SI{160}{\mm} und der exakten Höhe \SI{80}{\mm} gesetzt werden. Weiter soll natürlich die Position der Lösungsbox und der Häuschenbox exakt identisch sein.\vskip1ex \setboolean{loesung}{false} % kann auf true oder false gesetzt werden \gitterLoesung{160}{80}{156mm}{77mm}{0mm}{7mm}{Hier soll die Lösung stehen: $E=m\cdot c^2$.} Mit der obigen Variante ist es leider so, dass die Abstände innerhalb verschiedener Elemente (wie Text, Grid, etc.) beim Umschalten von Schüler- auf Lehrerausgabe unterschiedlich sind und so Seitenumbrüche und Abstände nicht mehr stimmen. \clearpage Beschreiben Sie die \textbf{Satzgruppe des Pythagoras}.\vskip1ex \setboolean{loesung}{true} % kann auf true oder false gesetzt werden \gitterLoesung{160}{80}{156mm}{77mm}{0mm}{7mm}{\textbf{Lösung}:% \begin{align*} \left.\begin{aligned} c^2 &=a^2+b^2\\ a^2 &=p\cdot c\;\wedge\; b^2=q\cdot c\\ h^2 &=p\cdot q \end{aligned}\right\} \begin{gathered} \text{Satzgruppe}\\ \text{des Pythagoras} \end{gathered} \end{align*}} Geben Sie die Formel der \textbf{gleichförmigen Bewegung} wieder. Gehen Sie davon aus, dass Sie 1000~Meter in 3$\frac{1}{2}$ Minuten laufen. \begin{enumerate*}[label=\bfseries\alph*)] \item Mit welcher Geschwindigkeit legen Sie die Strecke zurück? \item Geben Sie die Geschwindigkeit in \si{\km\per\hour} an. \end{enumerate*} \textbf{Hinweis:} Nehmen Sie zur Berechnung die Vereinfachte Form und gehen Sie davon aus, dass Ihre Geschwindigkeit konstant ist. \vskip1ex \setboolean{loesung}{true} % kann auf true oder false gesetzt werden \gitterLoesung{160}{80}{156mm}{77mm}{0mm}{7mm}{\textbf{Lösung}:% \begin{align*} s &=v\cdot t+s_0\\ 1000 &=v\cdot 210\\ v &=\frac{\SI{1000}{\m}}{\SI{210}{\second}}\\ v &=\SI{4.76}{\m\per\second} \;\widehat{\approx}\; \SI{17}{\km\per\hour} \end{align*}} \end{document}

MH42
Forum-Newbie
Forum-Newbie
Beiträge: 4
Registriert: Sa 2. Mai 2020, 09:06

Re:

Beitrag von MH42 »

cgnieder hat geschrieben:
Mi 24. Mai 2017, 12:20

Das neue Paket xsim, das der offizielle Nachfolger für exsheets ist, hat ein Beispiel für genau diese Frage: https://github.com/cgnieder/xsim/blob/m ... -16824.pdf

Ich probiere jetzt schon wieder ein Weilchen herum .. das Beispiel, welches Du hier nennst existiert zwar nicht mehr, aber unter dem Beispiel golatex-80640.html finde ich den Eintrag aus diesem Forum hier. Das sieht gut aus und macht, was es soll .... nur ist Höhe und Breite der Box als Platzhalter für die Lösung fix vorgegeben, oder sehe ich das falsch?

\newlength\breite
\setlength\breite{160mm}
\newlength\hoehe
\setlength\hoehe{80mm}

kann man das per Option so gestalten, dass die Boxgrösse jeweils in der Aufgabenstellung angegeben wird? also z.B. in der Form

\begin{exercise}{breite}{hoehe}

und in der Loesung werden die Werte übernommen? Das geht mir moenmtan noch zu weit für meine Kenntnisse, wäre aber ungefähr das, was ich für die Skripterstellung brauche ...

Ach ja ... und funktioniert das package in jeder Dokumentklasse (also z.B. auch in scrbook?)

Hier noch der ganze Code aus dem xsim-Beispiel (ich hoffe, das ist ok, den hier reinzupacken?)

% http://golatex.de/viewtopic,p,80640.html
\documentclass[fontsize=12pt,parskip=half]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}

\newlength\breite
\setlength\breite{160mm}
\newlength\hoehe
\setlength\hoehe{80mm}

\usepackage[
  hdivide={3.0cm,\breite,},
  vdivide={2.2cm,,2.2cm}]{geometry}
\usepackage[bitstream-charter]{mathdesign}

\usepackage[babel]{microtype}

\usepackage[inline]{enumitem}

\usepackage{amsmath,siunitx}
\sisetup{
  locale = DE ,
  per-mode = fraction
}

\usepackage{xsim,needspace,tikz,tcolorbox}

\xsimsetup{
  exercise/template = gitter ,
  solution/template = gitter
}

\DeclareExerciseEnvironmentTemplate{gitter}
  {%
    \IfInsideSolutionT{%
      \tcolorbox[
        detach title ,
        title        = Lösung: ,
        before upper = {\tcbtitle\space} ,
        fonttitle    = \bfseries ,
        fontupper    = \large ,
        valign       = center ,
        colframe     = black!50!white ,
        colback      = black!12!white ,
        coltext      = blue ,
        coltitle     = blue ,
        height       = \hoehe ,
        width        = \breite ,
        sharp corners
      ]
    }%
  }
  {%
    \IfInsideSolutionTF
      {\endtcolorbox}
      {%
        \IfSolutionPrintF{%
        \par
        \begin{tikzpicture}[semitransparent]
          \draw[step=4mm, line width=0.15mm, black!60!white] (0,0) grid
            (\breite,\hoehe);
        \end{tikzpicture}
        \par
        }
      }%
  }

\begin{document}

\begin{exercise}
  Für die \textbf{Schülerausgabe} sollen Häuschen (Grid) mit Seitenlänge
  \SI{4}{\mm} gesetzt werden.
\end{exercise}
\begin{solution}
  Hier soll die Lösung stehen: $E=m\cdot c^2$.
\end{solution}

\xsimsetup{solution/print=true}

\begin{exercise}
  Für die \textbf{Lehrerausgabe} sollen statt Häuschen die Lösung in
  z.\,B. einer Box geschrieben werden. Dafür soll die Lösung (bezogen auf
  dieses Beispiel) auch in einer Box mit der exakten Breite \SI{160}{\mm} und
  der exakten Höhe \SI{80}{\mm} gesetzt werden. Weiter soll natürlich die
  Position der Lösungsbox und der Häuschenbox exakt identisch sein.
\end{exercise}
\begin{solution}
  Hier soll die Lösung stehen: $E=m\cdot c^2$.
\end{solution}

\clearpage

\begin{exercise}
  Beschreiben Sie die \textbf{Satzgruppe des Pythagoras}.
\end{exercise}
\begin{solution}
  \begin{align*}
    \left.\begin{aligned}
      c^2   &=a^2+b^2\\
      a^2   &=p\cdot c\;\wedge\; b^2=q\cdot c\\
      h^2   &=p\cdot q
    \end{aligned}\right\}
    \begin{gathered}
      \text{Satzgruppe}\\
      \text{des Pythagoras}
    \end{gathered}
  \end{align*}
\end{solution}

\begin{exercise}
  Geben Sie die Formel der \textbf{gleichförmigen Bewegung} wieder. Gehen Sie
  davon aus, dass Sie 1000~Meter in
  \SI[parse-numbers=false]{3\frac{1}{2}}{Minuten} laufen.
  \begin{enumerate*}[label=\bfseries\alph*)]
    \item Mit welcher Geschwindigkeit legen Sie die Strecke zurück?
    \item Geben Sie die Geschwindigkeit in \si{\km\per\hour} an.
  \end{enumerate*}
  \textbf{Hinweis:} Nehmen Sie zur Berechnung die vereinfachte Form und gehen
  Sie davon aus, dass Ihre Geschwindigkeit konstant ist.
\end{exercise}
\begin{solution}
  \begin{align*}
    s    &=v\cdot t+s_0 \\
    1000 &=v\cdot 210 \\
    v    &=\frac{\SI{1000}{\m}}{\SI{210}{\second}} \\
    v    &=\SI{4.76}{\m\per\second} = \SI{17.1}{\km\per\hour}
  \end{align*}
\end{solution}

\end{document}

Benutzeravatar
cgnieder
Forum-Meister
Forum-Meister
Beiträge: 730
Registriert: Fr 22. Okt 2010, 18:37
Wohnort: Herrenberg
Kontaktdaten:

Re: Schüler- und Lehrerlösung im gleichen Texfile

Beitrag von cgnieder »

xsim kann grundsätzlich mit jeder Klasse verwendet werden…

Du kannst das Beispiel so abändern, dass du

\begin{exercise}[hoehe=30mm]
  ...
\end{exercise}

verwenden kannst:

\documentclass[fontsize=12pt,parskip=half]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}

\usepackage[
  hdivide={3.0cm,160mm},
  vdivide={2.2cm,,2.2cm}]{geometry}
\usepackage[bitstream-charter]{mathdesign}

\usepackage[babel]{microtype}

\usepackage[inline]{enumitem}

\usepackage{amsmath,siunitx}
\sisetup{
  locale = DE ,
  per-mode = fraction
}

\usepackage{xsim,needspace,tikz,tcolorbox}

\xsimsetup{
  exercise/template = gitter ,
  solution/template = gitter
}

\DeclareExerciseProperty{hoehe}
\DeclareExerciseProperty{breite}

\DeclareExerciseEnvironmentTemplate{gitter}
  {%
    \IfExercisePropertySetTF{hoehe}
      {\edef\hoehe{\GetExerciseProperty{hoehe}}}{\def\hoehe{80mm}}%
    \IfExercisePropertySetTF{breite}
      {\edef\breite{\GetExerciseProperty{breite}}}{\def\breite{160mm}}%
    \IfInsideSolutionT{%
      \tcolorbox[
        detach title ,
        title        = Lösung: ,
        before upper = {\tcbtitle\space} ,
        fonttitle    = \bfseries ,
        fontupper    = \large ,
        valign       = center ,
        colframe     = black!50!white ,
        colback      = black!12!white ,
        coltext      = blue ,
        coltitle     = blue ,
        height       = \hoehe ,
        width        = \breite ,
        sharp corners
      ]
    }%
  }
  {%
    \IfInsideSolutionTF
      {\endtcolorbox}
      {%
        \IfSolutionPrintF{%
        \par
        \begin{tikzpicture}[semitransparent]
          \draw[step=4mm, line width=0.15mm, black!60!white] (0,0) grid
            (\breite,\hoehe);
        \end{tikzpicture}
        \par
        }
      }%
  }

\begin{document}

\begin{exercise}
  Für die \textbf{Schülerausgabe} sollen Häuschen (Grid) mit Seitenlänge
  \SI{4}{\mm} gesetzt werden.
\end{exercise}
\begin{solution}
  Hier soll die Lösung stehen: $E=m\cdot c^2$.
\end{solution}

\xsimsetup{solution/print=true}

\begin{exercise}[hoehe=30mm]
  Für die \textbf{Lehrerausgabe} sollen statt Häuschen die Lösung in
  z.\,B. einer Box geschrieben werden. Dafür soll die Lösung (bezogen auf
  dieses Beispiel) auch in einer Box mit der exakten Breite \SI{160}{\mm} und
  der exakten Höhe \SI{80}{\mm} gesetzt werden. Weiter soll natürlich die
  Position der Lösungsbox und der Häuschenbox exakt identisch sein.
\end{exercise}
\begin{solution}
  Hier soll die Lösung stehen: $E=m\cdot c^2$.
\end{solution}

\clearpage

\begin{exercise}
  Beschreiben Sie die \textbf{Satzgruppe des Pythagoras}.
\end{exercise}
\begin{solution}
  \begin{align*}
    \left.\begin{aligned}
      c^2   &=a^2+b^2\\
      a^2   &=p\cdot c\;\wedge\; b^2=q\cdot c\\
      h^2   &=p\cdot q
    \end{aligned}\right\}
    \begin{gathered}
      \text{Satzgruppe}\\
      \text{des Pythagoras}
    \end{gathered}
  \end{align*}
\end{solution}

\begin{exercise}
  Geben Sie die Formel der \textbf{gleichförmigen Bewegung} wieder. Gehen Sie
  davon aus, dass Sie 1000~Meter in
  \SI[parse-numbers=false]{3\frac{1}{2}}{Minuten} laufen.
  \begin{enumerate*}[label=\bfseries\alph*)]
    \item Mit welcher Geschwindigkeit legen Sie die Strecke zurück?
    \item Geben Sie die Geschwindigkeit in \si{\km\per\hour} an.
  \end{enumerate*}
  \textbf{Hinweis:} Nehmen Sie zur Berechnung die vereinfachte Form und gehen
  Sie davon aus, dass Ihre Geschwindigkeit konstant ist.
\end{exercise}
\begin{solution}
  \begin{align*}
    s    &=v\cdot t+s_0 \\
    1000 &=v\cdot 210 \\
    v    &=\frac{\SI{1000}{\m}}{\SI{210}{\second}} \\
    v    &=\SI{4.76}{\m\per\second} = \SI{17.1}{\km\per\hour}
  \end{align*}
\end{solution}

\end{document}
Clemens
Paketauthor

MH42
Forum-Newbie
Forum-Newbie
Beiträge: 4
Registriert: Sa 2. Mai 2020, 09:06

Re: Schüler- und Lehrerlösung im gleichen Texfile

Beitrag von MH42 »

Super, danke für die Antwort .... das war zu einfach mit dieser Lösung .... manchmal sieht man den Wald vor lauter Bäumen einfach nicht. :D


Antworten