<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>OCaml de pied en cap &#187; LaTeX</title>
	<atom:link href="https://blog.developpez.com/ocamlblog/pcategory/latex/feed" rel="self" type="application/rss+xml" />
	<link>https://blog.developpez.com/ocamlblog</link>
	<description></description>
	<lastBuildDate>Fri, 22 Mar 2013 03:12:26 +0000</lastBuildDate>
	<language>fr-FR</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.1.42</generator>
	<item>
		<title>Les questionnaires à choix multiples avec LaTeX</title>
		<link>https://blog.developpez.com/ocamlblog/p9437/biologie/les_questionnaires_a_choix_multiples_ave</link>
		<comments>https://blog.developpez.com/ocamlblog/p9437/biologie/les_questionnaires_a_choix_multiples_ave#comments</comments>
		<pubDate>Sun, 31 Oct 2010 16:31:13 +0000</pubDate>
		<dc:creator><![CDATA[Cacophrene]]></dc:creator>
				<category><![CDATA[Biologie]]></category>
		<category><![CDATA[LaTeX]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Bonjour ! Si vous avez des enseignants dans votre entourage, vous serez peut-être sollicités (si ce n&#8217;est déjà fait) pour créer des questionnaires à choix multiples (QCM). Les QCM constituent un outil commode pour évaluer des élèves ou des étudiants. Ils se présentent sous la forme de questions auxquelles plusieurs réponses possibles sont proposées. En général, une seule de ces réponses est correcte; les autres, appelées distracteurs, visent à éprouver la maîtrise du sujet par [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>Bonjour !</p>
<p><center><br />
<table>
<tr>
<td><a href="http://fr.wikipedia.org/wiki/LaTeX" target="_blank"><img src="http://blog.developpez.com/media/LaTeX_logo.png" width="300" height="125" alt="" /></a></td>
</tr>
</table>
<p></center></p>
<p>Si vous avez des enseignants dans votre entourage, vous serez peut-être sollicités (si ce n&rsquo;est déjà fait) pour créer des <strong>questionnaires à choix multiples</strong> (QCM). Les QCM constituent un outil commode pour évaluer des élèves ou des étudiants. Ils se présentent sous la forme de questions auxquelles plusieurs réponses possibles sont proposées. En général, une seule de ces réponses est correcte; les autres, appelées distracteurs, visent à éprouver la maîtrise du sujet par les candidats. À ce titre, elles se doivent d&rsquo;être plausibles.</p>
<p><span id="more-22"></span></p>
<p>En règle générale, l&rsquo;évaluateur souhaite produire deux versions de son questionnaire : une version vierge destinée aux candidats, et une version corrigée, souvent destinée à l&rsquo;impression sur transparent, pour l&rsquo;aider dans la correction des copies. Nous allons voir qu&rsquo;il est possible de satisfaire à toutes ces exigences en utilisant LaTeX sans aucune extension dédiée !</p>
<h3>Des paquets</h3>
<p>Comme toujours, on commence un document LaTeX par l&rsquo;écriture de son préambule. Dans le cas qui nous intéresse, nous allons rédiger un questionnaire en français à l&rsquo;aide de la classe article. Nous avons donc besoin du code suivant : </p>
<pre>\documentclass[11pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[french]{babel}
\usepackage[T1]{fontenc}
\usepackage{lmodern}</pre>
<p>Les cases à cocher seront représentées par des symboles mathématiques, de sorte que nous devons aussi charger les paquets fournis par la <a href="http://fr.wikipedia.org/wiki/American_Mathematical_Society">société mathématique américaine</a> :</p>
<pre>\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}</pre>
<p>Nous souhaitons en outre utiliser tout l&rsquo;espace disponible afin de réduire la longueur de l&rsquo;énoncé. Nous souhaitons donc écrire nos questions sur plusieurs colonnes (paquet <code class="codecolorer text default"><span class="text">multicol</span></code>). Nous aurons aussi besoin de personnaliser l&rsquo;en-tête et le pied de page (paquet <code class="codecolorer text default"><span class="text">fancyhdr</span></code>)&#8230; et vous verrez plus tard que les macros que nous allons écrire nécessitent le paquet <code class="codecolorer text default"><span class="text">ifthen</span></code> :</p>
<pre>\usepackage{ifthen}
\usepackage{multicol}
\usepackage{fancyhdr} </pre>
<h3>Des macros</h3>
<p>Afin de pouvoir passer facilement du mode &laquo;&nbsp;énoncé&nbsp;&raquo; au mode &laquo;&nbsp;corrigé&nbsp;&raquo;, nous allons définir une variable booléenne <code class="codecolorer text default"><span class="text">correction</span></code> et l&rsquo;initialiser à faux (<code class="codecolorer text default"><span class="text">false</span></code>) :</p>
<pre>\newboolean{correction}
\setboolean{correction}{false}</pre>
<p>Nous allons aussi définir un compteur pour les numéros des questions :</p>
<pre>\newcounter{QNumber}</pre>
<h4>Définir une question</h4>
<p>Nous allons ensuite écrire une macro <code class="codecolorer text default"><span class="text">\Question</span></code> qui permet de définir une nouvelle <em>question</em>. Cette macro reçoit deux arguments : le premier, facultatif, indique quel est le caractère à placer en fin de question (le plus souvent &lsquo;:&rsquo;, mais on peut aussi trouver un point d&rsquo;interrogation), et le second n&rsquo;est autre que la question elle-même. Nous écrivons donc :</p>
<pre>\newcommand{\Question}[2][:]{
  \stepcounter{QNumber}
  \noindent\textbf{Question \theQNumber} -- #2~#1
}</pre>
<h4>Ajouter une liste de choix</h4>
<p>Nous allons aussi définir un environnement <code class="codecolorer text default"><span class="text">Reponse</span></code> pour permettre d&rsquo;entrer les différents choix proposés à la sagacité des candidats :</p>
<pre>\newenvironment{Reponse}{
  \begin{list}{$\square$}{\leftmargin=5em}
}{
  \end{list}\vspace{1em}
}</pre>
<h4>Proposition correcte et distracteurs</h4>
<p>Il ne nous reste plus qu&rsquo;à définir la macro <code class="codecolorer text default"><span class="text">\Vrai</span></code> (resp. <code class="codecolorer text default"><span class="text">\Faux</span></code>) pour ajouter une proposition vraie (resp. fausse) :</p>
<pre>\newcommand{\Vrai}{
  \item[\ifthenelse{\boolean{correction}}{$\blacksquare$}{$\square$}]}
\newcommand{\Faux}{\item[$\square$]}</pre>
<p>Vous remarquerez que le symbole utilisé par la macro \Vrai dépend de l&rsquo;état de la variable booléenne correction. De cette façon, si correction est égal à true, les réponses justes seront marquées par un carré plein, ce qui révèle la correction du questionnaire.</p>
<h3>En-tête et pied de page</h3>
<p>On souhaite ajouter en en-tête de la première page des champs permettant au condidat d&rsquo;indiquer son nom et son prénom :</p>
<pre>\chead{\ifthenelse{\thepage=1}{
  \textbf{Nom :}
  \makebox[12em]{\dotfill}
  \hspace{2em}
  \textbf{Prénom :}
  \makebox[12em]{\dotfill}}{}} </pre>
<p>Si les questions continuent au verso, on veut que le recto de la première page se termine par la mention &laquo;&nbsp;<em>Tournez la page s&rsquo;il vous plaît</em>&nbsp;&raquo; :  </p>
<pre>\rfoot{\ifthenelse{\thepage=1}{\textit{(tournez la page s.v.p)}}{}}</pre>
<p>Je laisse au lecteur le soin de généraliser ceci à toutes les pages impaires dans le cas d&rsquo;un questionnaire comportant plus de deux pages pleines.</p>
<h3>Compilation du document</h3>
<p>Pour compiler votre document et produire un fichier PDF, il vous suffit d&rsquo;utiliser la commande <strong>pdflatex qcm.tex</strong>. En changeant la valeur du booléen <code class="codecolorer text default"><span class="text">correction</span></code>, vous obtenez ainsi un <a href="http://www.box.net/shared/dj68ol7bms">énoncé</a> et un <a href="http://www.box.net/shared/zgqc9c5nlq">corrigé</a>. <a href="http://pastebin.com/fpFpPJZa">Le code source est disponible ici</a>.</p>
<p>Cordialement,<br />
Cacophrène</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
