Étant à la fois $latex \LaTeX$ nazi et enseignant, je rédige bien sûr mes sujets d’examen sous $latex \LaTeX$. Le mieux pour ce faire est d’utiliser la bien nommée classe exam
.
Table des matières
Exemple minimal
La structure la plus élémentaire se compose ainsi :
\documentclass{exam} \usepackage[T1]{fontenc} \usepackage[utf8]{inputenc} \usepackage[frenchb]{babel} \usepackage{lmodern} \title{Whatever} \begin{document} \maketitle \begin{questions} \question[1] Première question \question[\half] Deuxième question \end{questions} \end{document} |
On obtient donc ceci :
Vous l’aurez compris, dans l’environnement questions
, la commande de base est \question
, à laquelle on peut passer en option le nombre de points. Comme vous le voyez dans mon exemple précédent, \half
permet de mettre les demi-points sous forme fractionnelle.
Récapitulatif des points par question
Si vous souhaitez afficher un tableau qui détaille la répartition complète des points, il faut alors ajouter l’option addpoints
à la classe :
\documentclass[addpoints]{exam} |
puis utiliser la commande \gradetable
à l’endroit où vous souhaitez faire figurer le récapitulatif. Après deux compilations, celui-ci ressemble à ça :
Par défaut, cette table est verticale. Pour l’avoir sous forme horizontale, il suffit d’ajouter l’option « h
» à \gradetable
.
Vous noterez que le terme « Score » est plutôt inapproprié dans la langue des non-gamers. Vous utiliserez donc la commande suivante pour remettre $latex \LaTeX$ dans le droit chemin :
\vsword{Note} |
Et pour la variante horizontale du tableau :
\hsword{Note} |
Afficher (ou non) les solutions
Si vous avez l’intention de rédiger un corrigé de l’examen, c’est vers l’environnement solution
qu’il faudra se tourner. Celui-ci se place juste après chaque question et contient la solution complète de chacune d’elles.
Par défaut, les solutions sont cachées (malin !), il faut donc ajouter l’option answers
à la classe pour les afficher. Ceci permet de créer très facilement une version enseignant et une version étudiants à votre document.
Exemple :
\question[1] Soient $a$ et $b$ deux réels. Rappeler le développement de $\sin(a-b)$. \begin{solution} \begin{equation*} \sin\left(a-b\right)=\sin a \cos b-\cos a \sin b \end{equation*} \end{solution} |
Rendu (avec l’option answers
) :
Sous-questions
Il est possible de détailler une question en plusieurs sous-questions grâce à l’environnement parts
:
\question[1] Rappeler les valeurs de : \begin{parts} \part $\cos(\pi/3)$ \part $\sin(\pi/3)$ \part $\cos(\pi/4)$ \part $\sin(\pi/4)$ \end{parts} |
Espace libre pour les réponses
Pour laisser de l’espace entre les questions (pour laisser à l’élève la possibilité de répondre sur le document), il suffit d’utiliser la commande \vspace{<longueur de l'espace>}
.
QCM
Pour proposer différentes solutions à une question, le plus simple est d’utiliser la commande \choice
au sein de l’environnement choices
:
\question[1] La fonction $\sin$ est : \begin{choices} \choice $2\pi$-périodique \choice paire \choice impaire \end{choices} |
Toutefois, si c’est pour mettre dans un document réponse, peut-être préférerez-vous l’environnement checkboxes en lieu et place de choices :
Pour aller plus loin
La classe exam
dispose de nombre d’options, parmi lesquelles j’ai fait une partiale sélection pour la synthèse de ce billet. Pour en découvrir plus, je vous invite donc à consulter la doc en ligne.
Par ailleurs, si vous souhaitez générer des QCM avec correction automatique (depuis des scans), allez donc voir du côté d’AMC (pas encore testé, mais ça semble pas mal du tout).