
<h2 class="wimscenter">Commentaires ciblés selon les réponses</h2>

<p>
Vous pouvez définir des conditions (sur les réponses données par les
utilisateurs) sous lesquelles des commentaires peuvent être imprimés dans la
page de résultat d'un exercice. Une utilisation commune de cette facilité
sera de donner des avertissements quand une erreur typique est détectée dans
la réponse.
</p><p>
Un nombre arbitraire de commentaires ciblés peuvent être ajoutés, sur tout type
de réponses (libre ou choix multiple). La syntaxe est comme suit.
</p><pre>
\feedback{CONDITION}{MESSAGE}
</pre><p>
Une telle ligne peut être placée dans le champ de paramètres (sous le mode
guidé) ou n'importe où dans la source (sous le mode brut).
</p><p>
Quand <span class="tt">CONDITION</span> est remplie,
<span class="tt">MESSAGE</span> sera montré à l'utilisateur dans la page de résultat.
Les valeurs des réponses de l'utilisateur peuvent être utilisées dans les deux
champs (CONDITION et MESSAGE) via les variables <span class="tt wims_code_variable">\reply1</span>,
<span class="tt wims_code_variable">\reply2</span>, ... (pour réponses libres),
<span class="tt wims_code_variable">\choice1</span>,
<span class="tt wims_code_variable">\choice2</span>,... (pour choix multiples).
L'ordre dans ces variables est le même que l'ordre sous lequel elles apparaissent dans la source (ou
dans le formulaire en $name_normal).
</p><p>
<span class="tt">MESSAGE</span> est un texte libre, acceptant les tags html et les symboles
mathématiques.
</p><p>
On pourra aussi s'aider de la variable <span class="tt wims_code_variable">\sc_reply1</span>,
<span class="tt wims_code_variable">\sc_reply2</span>,
... dont la valeur vaut 1 si la réponse est bonne, 0 si la réponse est fausse
et 0.5 si elle est bonne à précision près. Cette variable ne tient pas compte
des conditions supplémentaires éventuellement imposées et est vide dans le cas
où la réponse est uniquement analysée à l'aide de conditions.
</p>

$table_header
<caption>Exemples de conditions
<small>
!href target=wims_mhelp cmd=help&special_parm=if Liste complète
</small>
</caption>
$table_hdtr<th>condition</th><th>quand elle sera remplie</th></tr>
$table_tr<td><span class="tt wims_code_words">\reply1=5</span></td>
<td>la première réponse libre est exactement égale à 5</td></tr>
$table_tr<td><span class="tt wims_code_words">\reply1&gt;\reply2+2</span></td>
<td>la première réponse libre est &gt; la seconde plus 2</td></tr>
$table_tr<td><span class="tt wims_code_words">\choice1=Oui and \choice2=Non</span></td>
  <td>premier choix multiple est Oui, et le second est Non (<b>attention</b>
la comparaison dans les choix multiples est sensible aux
minuscules-majuscules&nbsp;!)
</td></tr>
$table_tr<td><span class="tt wims_code_words">\reply1&lt;5 or \reply1&gt;8</span></td>
  <td>première réponse est hors de l'intervalle [5,8].
</td></tr>
$table_tr<td><span class="tt wims_code_words">3 isitemof \reply1</span></td>
  <td>la première réponse, du type <span class="tt wims_code_words">set</span>
  ou <span class="tt wims_code_words">vector</span>,
  contient une composante "3".
</td></tr>
$table_end

<p>
<b>Bogue connu</b>&nbsp;: Vous devez éviter le mélange de <span class="tt wims_code_variable">\reply</span> et
<span class="tt wims_code_variable">\choice</span> dans une même condition.
 Sinon le résultat sera imprévisible.
</p>
