!set titb=QCM à questions successives
!set keyw=
!set datm=20050426
!set prev=
!set next=
!set upbl=main
!set dat1=19000101
!set dat2=24000101


!if $wims_read_parm!=$empty
 !goto $wims_read_parm
!endif
!exit

:content

!read primitives.phtml 1, embed, definition, &nbsp; 

Dans le QCM suivant, les questions sont données une par une, 
 les réponses aux questions précédentes s'affichent 
 mais le QCM s'arrête à la première faute.  
!read primitives.phtml 2, link, fichierqcm2 

<p>
<pre class = "cc">
<div class = "variable">
$m_title{QCM &#58; question une par une}
$m_text{N = <font color = "green"> 3</font>}
$m_text{data = <font color = "green">data1</font>}
$m_integer{cnt_question = $m_wims($m_recordcnt \data)}
$m_text{bat = $m_shuffle(\cnt_question)}
<p>
$m_matrix{question = }
$m_matrix{rep = }
$m_text{CNT_choix = }
$m_matrix{CHOIX = }
<tt class="comm">\for</tt>{i = 1 <tt class="w">to</tt> \N  }{
  $m_matrix{QUEST = $m_wims($m_record \bat[\i] of \data)}
  $m_matrix{question = \question
  \QUEST[1;]}
  $m_integer{cnt_choix = $m_rows(\QUEST)-2}
  $m_text{CNT_choix = \CNT_choix,\cnt_choix}
  $m_text{Choix = }
  $m_text{mix = $m_shuffle(\cnt_choix)}
  <tt class="comm">\for</tt>{ j = 3 <tt class="w">to</tt> \cnt_choix + 2}{
     $m_text{choix = \QUEST[\j;]}
     $m_matrix{Choix = \Choix, \choix[1;]}
  }
  $m_text{Choix = $m_wims($m_nonempty <tt class="w">items</tt> \Choix)}
  $m_text{Choix = \Choix[\mix]}
  $m_matrix{CHOIX = \CHOIX
     \Choix}
  $m_text{H = $m_wims($m_nospace \QUEST[2;])}
  $m_text{pos = }
  <tt class="comm">\for</tt>{r <tt class="w">in</tt> \H}{ $m_text{pos = \pos,$m_position(\r,\mix)} }
  $m_text{pos = $m_wims($m_nonempty <tt class="w">items</tt> \pos)}
  $m_matrix{rep = \rep
    \pos}
}
<p>
$m_text{CNT_choix = $m_wims($m_nonempty <tt class="w">items</tt> \CNT_choix)}
<p>
$m_text{STEP = $m_wims($m_makelist r x <tt class="w">for</tt> x = 1 <tt class="w">to</tt> \N)}
$m_text{STEP = $m_wims($m_replace $m_internal , $m_by ; <tt class="w">in</tt> \STEP)}
$m_steps{\STEP}
</div>
</pre>
<div class = "aide">Ici <tt class = "c">STEP</tt> est de la forme
<tt class = "c"><tt class="reply">r1</tt>;<tt class="reply">r2</tt>;<tt class="reply">r3</tt></tt>, à chaque étape, il y a une question 
supplémentaire.
</div>
<pre class = "cc">
<div class = "statement">
$m_statement{Read the text above
then answer the questions.
 <tt class="comm">\for</tt>{h = 1 <tt class="w">to</tt> \step}{
  &lt;p>
  \question[\h;]
  <tt class="comm">\if</tt>{\h &lt; \step}{
    &lt;font color = green>\CHOIX[\h;\rep[\h;]]&lt;/font>
 &lt;/p>}
  {&lt;/p>&lt;ol>
   <tt class="comm">\for</tt>{s = 1 <tt class="w">to</tt> \CNT_choix[\h]}{
   &lt;li><tt class="comm">\embed</tt>{reply \h , \s }&lt;/li>
   }
   &lt;/ol>&lt;/li>
  }
 }
}
</div>
<div class = "variable">
$m_answer{}{\REP[1;];\CHOIX[1;]}{<tt class="type">type=radio</tt>}
$m_answer{}{\REP[2;];\CHOIX[2;]}{<tt class="type">type=radio</tt>}
$m_answer{}{\REP[3;];\CHOIX[3;]}{<tt class="type">type=radio</tt>}
$m_answer{}{\REP[4;];\CHOIX[4;]}{<tt class="type">type=radio</tt>}
$m_answer{}{\REP[5;];\CHOIX[5;]}{<tt class="type">type=radio</tt>}
$m_answer{}{\REP[6;];\CHOIX[6;]}{<tt class="type">type=radio</tt>}
$m_answer{}{\REP[7;];\CHOIX[7;]}{<tt class="type">type=radio</tt>}
$m_answer{}{\REP[8;];\CHOIX[8;]}{<tt class="type">type=radio</tt>}
</div>
</pre>

