\embed{definition}{&nbsp;}Un exercice à étapes est un exercice qui ne pose pas toutes les questions à la fois. 
On pose des questions, si la réponse est juste, on en pose d'autres ...


<h4>Etapes dont on peut précalculer toutes les questions</h4>
On utilise une commande <tt class="c">\steps</tt>
qui crée automatiquement une variable <tt class="c">\\step</tt>. A chaque fois
que l'utilisateur clique sur <tt class="d">Répondre</tt>, la variable
<tt class="c">\\step</tt> est incrémentée de 1. On peut donc l'utiliser pour décider
quel texte doit être vu à un moment donné. 
\link{steps}{<img src="gifs/doc/ddroite.gif" alt="exemple" width="20" height="20" border=0 valign=bottom>}

 
\link{equation}{<img src="gifs/doc/ddroite.gif" alt="exemple" width="20" height="20" border=0 valign=bottom>} Exercice à étape sur les polynômes du second degré

<h4>Nombre variables de questions</h4>
Vous avez besoin d'un nombre
variables de questions selon les données aléatoires. 
c'est la commande <tt class="c">\\step</tt> qui vous permettra
de résoudre ce problème : on introduit à la fin du source un nombre
trop important de <tt class="c"> \answer\lbrac \rbrac\lbrac  \rbrac\lbrac  \rbrac </tt>
et on indique dans <tt class="c">\steps\lbrac \rbrac </tt> les réponses 
effectivement demandées en fonction des variables aléatoires. 
 <pre class="cc">
\text\lbrac n = \randint (3<tt class="w">..</tt>5) \rbrac
\text\lbrac STEP = \wims(\makelist r x <tt class="w">for</tt> x = 1 <tt class="w">to</tt> \\n) \rbrac
\steps\lbrac \\STEP \rbrac </pre>

\link{varreponse}{Un exemple détaillé}

<h4>Etapes qu'on ne peut pas précalculer</h4>

Dans certains cas, on désire proposer une suite à l'exercice
selon ce qu'aura répondu l'élève et qu'il n'est pas possible de prévoir totalement. 
Dans ce cas, on ne peut pas définir au départ la liste des 
<tt class="c"><tt class=reply>r1</tt>,..., <tt class=reply>r10</tt></tt>. 
La commande \steps qui permet de décrire la liste des questions-réponses pour chaque étape
 est remplacée par
la commande \nextstep

<ul><li> On initialise la liste des reponses demandées à la première 
étape dans une variable <tt class="c">var</tt> (appelée dans les exemples
<tt class="c">nstep</tt>) : 
<pre class="cc">
\text\lbrac var = <tt class=reply>r1</tt>, <tt class=reply>r2</tt> \rbrac
\nextstep\lbrac \\var \rbrac </pre>
</li>
<li>on redéfinit la variable <tt class="c">var</tt> après le 
statement pour obtenir la liste des réponses à l'étape suivante
(selon les conditions imposées par l'exercice). Le numéro de l'étape
est alors donnée par la variable <tt class="c">step</tt> comme dans le 
cas d'un exercice à étapes classique et peut être utilisée dans les conditions de définition de <tt class="c">var</tt>. 

</li>
</ul>
\link{nextstep0}

 \link{nextstep}{Un autre exemple}
