Exam Klasse: Korrekte Antwort mit einem Pfeil markieren

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

Markdown is OFF

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: Exam Klasse: Korrekte Antwort mit einem Pfeil markieren

von Gast » Fr 14. Feb 2020, 08:47

Genau so habe ich mir das vorgestellt. Ganz herzlichen Dank. Top!

von Bartman » Do 13. Feb 2020, 07:30

Ein fehlendes Minimalbeispiel wirkt auf die Helfer nicht sehr motivierend. Dessen Anfertigung wäre in diesem Fall nicht aufwendig gewesen.

Mit der Änderung der Kopie der Definition der choices-Umgebung aus der Datei exam.cls muss der Befehl \CorrectChoice nicht ersetzt werden. Die Befehle für das Einfügen des Pfeils habe ich einer Antwort von Paul Gaborit entnommen.

Code: Alles auswählen

\documentclass[answers]{exam}

\makeatletter
\renewenvironment{choices}%
  {\list{\choicelabel}%
     {\usecounter{choice}\def\makelabel##1{\hss\llap{##1}}%
       \settowidth{\leftmargin}{W.\hskip\labelsep\hskip 2.5em}%
       \def\choice{%
         \if@correctchoice
           \color@endgroup
           \endgroup
         \fi
         \item
         \do@choice@pageinfo
       } % choice
       \def\CorrectChoice{%
         \if@correctchoice
           \color@endgroup
           \endgroup
         \fi
         \ifprintanswers
           % We can't say \choice here, because that would
           % insert an \endgroup:
           % 2016/05/10: We say \color@begingroup in addition to
           % \begingroup in case \CorrectChoiceEmphasis involves color
           % and the text exactly fills the line (which would
           % otherwise create a blank line after this choice):
           % 2016/05/11: We leave hmode if we're in it,
           % i.e., if there's no blank line preceding this
           % \CorrectChoice command.  (Without this, the
           % \special created by a \color{whatever} command that might
           % be inserted by \CorrectChoice@Emphasis would be appended 
           % to the previous \choice, which could cause an extra
           % (blank) line to be inserted before this \CorrectChoice.)
           % Since \par and \endgraf seem to cancel \@totalleftmargin
           % (for reasons I don't understand), we'll do the following:
           % Motivated by  the def of \leavevmode, 
           %      \def\leavevmode{\unhbox\voidb@x}
           % we will now leave hmode (if we're in hmode):
           \ifhmode \unskip\unskip\unvbox\voidb@x \fi
           \begingroup \color@begingroup \@correctchoicetrue
           \CorrectChoice@Emphasis
         \fi
         \item\mbox{}\llap{$\rightarrow$\hspace{2em}}% <- eingefügt
         \do@choice@pageinfo
       } % CorrectChoice
       \let\correctchoice\CorrectChoice
       \labelwidth\leftmargin\advance\labelwidth-\labelsep
       \topsep=0pt
       \partopsep=0pt
       \choiceshook
     }%
  }%
  {\if@correctchoice \color@endgroup \endgroup \fi \endlist}
\makeatother

%\CorrectChoiceEmphasis{}

\begin{document}
\begin{questions}
\question Frage?

\begin{choices}
\choice Falsche Antwort
\CorrectChoice Richtige Antwort
\choice Falsche Antwort
\choice Falsche Antwort
\choice Falsche Antwort
\end{choices}
\end{questions}
\end{document}
Der Kommentar am Ende der ergänzten Befehlsfolge dient nicht nur dem Einfügen meiner Bemerkung.

Exam Klasse: Korrekte Antwort mit einem Pfeil markieren

von Gast » Mi 12. Feb 2020, 09:46

Guten Tag,

hat jemand eine Idee, wie man in der "exam"-Klasse die korrekte Antwort (also \correctchoice) vor dem Buchstaben mit einem Pfeil markieren kann, sodass das Ergebnis dan etwa so aussieht:

A Falsche Antwort
--> B Richtige Antwort
C Falsche Antwort
D Falsche Antwort
E Falsche Antwort[/d]

Nach oben