:texte de la question 1 numéro de la réponse choix1 choix2 choix3Vous pouvez recopier Source QCM 1 dans src/qcm.oef et sauf erreur de ma part, votre qcm devrait fonctionner. Vous pouvez/devez le nombre de questions, le nom du fichier de données, le type de réponses : checkbox au lieu de radio:
:texte de la question 2 numéro de la réponse choix1 choix2 choix3
\title{QCM sans feedback (toutes les questions)} \text{N = 3} Nom du fichier \text{data = data1} \integer{cnt_question = wims(recordcnt \data)}
\text{bat = shuffle(\cnt_question)}
\matrix{question = } \matrix{rep = } \text{CNT_choix = } \matrix{CHOIX = } \for{i = 1 to \N }{ \matrix{QUEST = wims(record \bat[\i] of \data)} \matrix{question = \question \QUEST[1;]}
\integer{cnt_choix = rows(\QUEST)-2} \text{CNT_choix = \CNT_choix,\cnt_choix} \text{Choix = } \text{mix = shuffle(\cnt_choix)} \for{ j = 3 to \cnt_choix + 2}{ \text{choix = \QUEST[\j;]} \matrix{Choix = \Choix, \choix[1;]} } \text{Choix = wims(nonempty items \Choix)} \text{Choix = \Choix[\mix]}
\matrix{CHOIX = \CHOIX \Choix} \text{H = wims(nospace \QUEST[2;])} \text{pos = } \for{r in \H}{ \text{pos = \pos,position(\r,\mix)} } \text{pos = wims(nonempty items \pos)} \matrix{rep = \rep \pos} \matrix{rep = \rep position(\H,\mix)} }
\text{CNT_choix = wims(nonempty items \CNT_choix)} \text{STEP = wims(makelist r x for x = 1 to \N)} \steps{\STEP}
\statement{ Répondre aux questions <ol> \for{h = 1 to \N}{ <li>\question[\h;] <ul> \for{s=1 to \CNT_choix[\h]}{ <li> \embed{reply \h , \s } </li> } </ul> </li> } </ol> }
\answer{}{\rep[1;];\CHOIX[1;]}{type=radio} \answer{}{\rep[2;];\CHOIX[2;]}{type=radio} \answer{}{\rep[3;];\CHOIX[3;]}{type=radio} \answer{}{\rep[4;];\CHOIX[4;]}{type=radio} \answer{}{\rep[5;];\CHOIX[5;]}{type=radio} \answer{}{\rep[6;];\CHOIX[6;]}{type=radio} \answer{}{\rep[7;];\CHOIX[7;]}{type=radio} \answer{}{\rep[8;];\CHOIX[8;]}{type=radio} \answer{}{\rep[9;];\CHOIX[9;]}{type=radio} \answer{}{\rep[10;];\CHOIX[10;]}{type=radio} \answer{}{\rep[11;];\CHOIX[11;]}{type=radio} \answer{}{\rep[12;];\CHOIX[12;]}{type=radio} \answer{}{\rep[13;];\CHOIX[13;]}{type=radio}
\title{QCM sans feedback (toutes les questions en même temps)} nombre de questions \text{N = 3}
Nom du fichier appelé \text{data = data1}
\integer{cnt_question = wims(recordcnt \data)} \text{bat = shuffle()}
\matrix{question = } \matrix{rep = } \text{CNT_choix = } \matrix{CHOIX = } \for{i = 1 to \N }{ \matrix{QUEST = wims(record \bat[\i] of \data)} \matrix{question = \question \QUEST[1;]} \integer{cnt_choix = rows(\QUEST)-2} \text{CNT_choix = \CNT_choix,\cnt_choix} \text{Choix = } \text{mix = shuffle(\cnt_choix)} \for{ j = 3 to \cnt_choix + 2}{ \text{choix = \QUEST[\j;]} \matrix{Choix = \Choix, \choix[1;]} } \text{Choix = wims(nonempty items \Choix)} \text{Choix = \Choix[\mix]} \matrix{CHOIX = \CHOIX \Choix} \text{H = wims(nospace \QUEST[2;])} \text{pos = } \for{r in \H}{ \text{pos = \pos,position(\r,\mix)} } \text{pos = wims(nonempty items \pos)} \matrix{rep = \rep \pos} }
\text{CNT_choix = wims(nonempty items \CNT_choix)}
\text{STEP = wims(makelist r x for x = 1 to \N)} \steps{\STEP}
\statement{ Répondre aux questions <ol> \for{h = 1 to \N}{ <li>\question[\h;] <ul> \for{s = 1 to \CNT_choix[\h]}{ <li> \embed{reply \h , \s } </li> } </ul> </li> } </ol> }
\answer{}{\rep[1;];\CHOIX[1;]}{type=radio} \answer{}{\rep[2;];\CHOIX[2;]}{type=radio} \answer{}{\rep[3;];\CHOIX[3;]}{type=radio} \answer{}{\rep[4;];\CHOIX[4;]}{type=radio} \answer{}{\rep[5;];\CHOIX[5;]}{type=radio} \answer{}{\rep[6;];\CHOIX[6;]}{type=radio} \answer{}{\rep[7;];\CHOIX[7;]}{type=radio} \answer{}{\rep[8;];\CHOIX[8;]}{type=radio} \answer{}{\rep[9;];\CHOIX[9;]}{type=radio} \answer{}{\rep[10;];\CHOIX[10;]}{type=radio} \answer{}{\rep[11;];\CHOIX[11;]}{type=radio} \answer{}{\rep[12;];\CHOIX[12;]}{type=radio} \answer{}{\rep[13;];\CHOIX[13;]}{type=radio}
\title{QCM : question une par une} \text{N = 3} \text{data = data1} \integer{cnt_question = wims(recordcnt \data)} \text{bat = shuffle(\cnt_question)}
\matrix{question = } \matrix{rep = } \text{CNT_choix = } \matrix{CHOIX = } \for{i = 1 to \N }{ \matrix{QUEST = wims(record \bat[\i] of \data)} \matrix{question = \question \QUEST[1;]} \integer{cnt_choix = rows(\QUEST)-2} \text{CNT_choix = \CNT_choix,\cnt_choix} \text{Choix = } \text{mix = shuffle(\cnt_choix)} \for{ j = 3 to \cnt_choix + 2}{ \text{choix = \QUEST[\j;]} \matrix{Choix = \Choix, \choix[1;]} } \text{Choix = wims(nonempty items \Choix)} \text{Choix = \Choix[\mix]} \matrix{CHOIX = \CHOIX \Choix} \text{H = wims(nospace \QUEST[2;])} \text{pos = } \for{r in \H}{ \text{pos = \pos,position(\r,\mix)} } \text{pos = wims(nonempty items \pos)} \matrix{rep = \rep \pos} }
\text{CNT_choix = wims(nonempty items \CNT_choix)}
\text{STEP = wims(makelist r x for x = 1 to \N)} \text{STEP = wims(replace internal , by ; in \STEP)} \steps{\STEP}
\statement{Read the text above then answer the questions. \for{h = 1 to \step}{ <p> \question[\h;] \if{\h < \step}{ <span style="color:green">\CHOIX[\h;\rep[\h;]]</span> </p>} {</p><ol> \for{s = 1 to \CNT_choix[\h]}{ <li>\embed{reply \h , \s }</li> } </ol> } } }
\answer{}{\REP[1;];\CHOIX[1;]}{type=radio} \answer{}{\REP[2;];\CHOIX[2;]}{type=radio} \answer{}{\REP[3;];\CHOIX[3;]}{type=radio} \answer{}{\REP[4;];\CHOIX[4;]}{type=radio} \answer{}{\REP[5;];\CHOIX[5;]}{type=radio} \answer{}{\REP[6;];\CHOIX[6;]}{type=radio} \answer{}{\REP[7;];\CHOIX[7;]}{type=radio} \answer{}{\REP[8;];\CHOIX[8;]}{type=radio}
\title{QCM : question une par une} \text{N = 3} \text{data = data1} \integer{cnt_question = wims(recordcnt \data)} \matrix{question = } \matrix{rep = } \text{CNT_choix = } \matrix{CHOIX = } \for{i = 1 to \N }{ \matrix{QUEST = wims(record \i of \data)} \matrix{question = \question \QUEST[1;]} \integer{cnt_choix = rows(\QUEST)-2} \text{CNT_choix = \CNT_choix,\cnt_choix} \text{Choix = } \text{mix = shuffle(\cnt_choix)} \for{ j = 3 to \cnt_choix + 2}{ \text{choix = \QUEST[\j;]} \matrix{Choix = \Choix, \choix[1;]} } \text{Choix = wims(nonempty items \Choix)} \text{Choix = \Choix[\mix]} \matrix{CHOIX = \CHOIX \Choix} \text{H = wims(nospace \QUEST[2;])} \text{pos = } \for{r in \H}{ \text{pos = \pos,position(\r,\mix)} } \text{pos = wims(nonempty items \pos)} \matrix{rep = \rep \pos} }
\text{CNT_choix = wims(nonempty items \CNT_choix)}
\text{STEP = wims(makelist r x for x = 1 to \N)} \text{STEP = wims(replace internal , by ; in \STEP)} \steps{\STEP}
\statement{Répondre aux questions : \for{h = 1 to \step}{ <p> \question[\h;] \if{\h < \step}{ <span style="color:green">\CHOIX[\h;\rep[\h;]]</span> </p>} {</p><ol> \for{s = 1 to \CNT_choix[\h]}{ <li>\embed{reply \h , \s }</li> } </ol> } } }
\answer{}{\rep[1;];\CHOIX[1;]}{type=radio} \answer{}{\rep[2;];\CHOIX[2;]}{type=radio} \answer{}{\rep[3;];\CHOIX[3;]}{type=radio} \answer{}{\rep[4;];\CHOIX[4;]}{type=radio} \answer{}{\rep[5;];\CHOIX[5;]}{type=radio} \answer{}{\rep[6;];\CHOIX[6;]}{type=radio} \answer{}{\rep[7;];\CHOIX[7;]}{type=radio} \answer{}{\rep[8;];\CHOIX[8;]}{type=radio}
\title{QCM : question une par une} \text{N = 3} \text{data = data1} \integer{cnt_question = wims(recordcnt ) } \text{bat = shuffle()} \matrix{question = } \matrix{rep = } \text{CNT_choix = } \matrix{CHOIX = } \for{i = 1 to \N }{ \matrix{QUEST = wims(record \bat[\i] of )} \matrix{question = \question \QUEST[1;]} \integer{cnt_choix = rows(\QUEST)-2} \text{CNT_choix = \CNT_choix,\cnt_choix} \text{Choix = } \text{mix = shuffle(\cnt_choix)} \for{ j = 3 to \cnt_choix + 2}{ \text{choix = \QUEST[\j;]} \matrix{Choix = \Choix, \choix[1;]} } \text{Choix = wims(nonempty items \Choix)} \text{Choix = \Choix[\mix]} \matrix{CHOIX = \CHOIX \Choix} \text{H = wims(nospace \QUEST[2;])} \text{pos = } \for{r in \H}{ \text{pos = \pos,position(\r,\mix)} } \text{pos = wims(nonempty items \pos)} \matrix{rep = \rep \pos} }
\text{CNT_choix = wims(nonempty items \CNT_choix)}
\text{STEP = wims(makelist r x for x = 1 to \N)} \text{STEP = wims(replace internal , by ; in \STEP)} \text{CONDITION = wims(makelist x for x = 1 to \cnt_question)} \steps{\STEP} \conditions{\CONDITION}
\statement{ \for{h = 1 to \step}{ <p> \question[\h;] \if{\h < \step}{ <span style="color:green">\CHOIX[\h;\rep[\h;]]</span> </p>} {</p><ol> \for{s = 1 to \CNT_choix[\h]}{ <li>\embed{reply \h , \s }</li> } </ul></li> } </ol> } }
\answer{}{\REP1;\CHOIX[1;]}{type=radio} \answer{}{\REP2;\CHOIX[2;]}{type=radio} \answer{}{\REP3;\CHOIX[3;]}{type=radio} \answer{}{\REP4;\CHOIX[4;]}{type=radio} \answer{}{\REP5;\CHOIX[5;]}{type=radio} \answer{}{\REP6;\CHOIX[6;]}{type=radio} \answer{}{\REP7;\CHOIX[7;]}{type=radio} \answer{}{\REP8;\CHOIX[8;]}{type=radio} \answer{}{\REP9;\CHOIX[9;]}{type=radio} \answer{}{\REP10;\CHOIX[10;]}{type=radio}
\condition{Question 1 : \REP1}{\REP1 issametext \CHOIX[1;\rep[1;]]} \condition{Question 2 : \REP2}{\REP2 issametext \CHOIX[2;\rep[2;]]} \condition{Question 3 : \REP3}{\REP3 issametext \CHOIX[3;\rep[3;]]} \condition{Question 4 : \REP4}{\REP4 issametext \CHOIX[4;\rep[4;]]} \condition{Question 5 : \REP5}{\REP5 issametext \CHOIX[5;\rep[5;]]} \condition{Question 6 : \REP6}{\REP6 issametext \CHOIX[6;\rep[6;]]} \condition{Question 7 : \REP7}{\REP7 issametext \CHOIX[7;\rep[7;]]} \condition{Question 8 : \REP8}{\REP8 issametext \CHOIX[8;\rep[8;]]} \condition{Question 9 : \REP9}{\REP9 issametext \CHOIX[9;\rep[9;]]} \condition{Question 10 : \REP10}{\REP10 issametext \CHOIX[10;\rep[10;]]}
\text{texte = {Il, Elle} a un {parapluie,sac}} \text{texte = wims( embraced \texte)}Sera choisi au hasard l'une des quatres phrases
Il a un parapluie Il a un sac Elle a un parapluie Elle a un sac
\text{prenom = randitem(Jean,Pierre)} \text{texte = wims(replace internal XXXX by \prenom in \texte)}
question nombre de questions numero des bons choix choix1 choix2 ... feedback1 feedback2 ...le fichier source de l'exercice OEF pourrait être par exemple
\title{QCM avec feedback} \language{fr} \author{E.Durand} \format{html}
\matrix{Q = wims(randrecord dataqcm)} \text{enonce = \Q[1;]} \text{n = \Q[2;]} \text{reponse = \Q[3;]} \text{choixetfeed = \Q[4..-1;]} \text{choix = \choixetfeed[1..\n;]} \text{verite = \choix[\reponse;]} \text{choix = wims(replace internal ; by , in \choix)} \text{feed = \choixetfeed[\n+1..-1;]} \text{feed = wims(replace internal ; by , in \feed)}
\text{verite1 = <ul><li>wims(replace internal ; by </li><li> in \verite)</li></ul>}
\statement{<b>\enonce : </b></p> <ul> \for{i = 1 to \n}{ <li Type="A"> \embed{reply1,\i} </li>} </ul> }
\answer{Question 1}{\reponse;\choix}{type=checkbox} \solution{\verite1} \text{commentaire = REMARQUES : <br />} \for{i = 1 to \n}{ \text{commentaire = \commentaire <b>item(\i,A,B,C,D,E) - \choix[\i] :</b>} \if{ (\choix[\i] isin \reply1) and \i isitemof \reponse } { \text{ajout = <i>vrai en effet</i><br />} } { \if{ (\choix[\i] isin \reply1 or \i isitemof \reponse)} {\text{ajout = \feed[\i] <br />}} {\text{ajout = <i>faux en effet</i><br />}} } \text{commentaire = \commentaire \ajout } } \feedback{1 = 1}{\commentaire }
image_common=yes
\title{Texte à trous (dictée)} \text{cnt_record = wims(recordcnt data)} \text{H = randint(\cnt_record)} \text{texte = wims(record \H of data)}
\text{bande = wims(word 1 of \texte)} \text{texte = wims(replace internal \bande by in \texte)}
\matrix{texte = slib(text/cutchoices \texte)} \text{cntrow = rows(\texte)} \integer{cntQ = \cntrow/2-1} \text{trou = } \for{i = 1 to \cntQ}{ \text{trou1 = \texte[2*\i;]} \text{trou = \trou, \trou1} } \text{trou = wims(nonempty items \trou)}
\text{audio = slib(media/audio /\bande )}
\text{STEP = wims(makelist r x for x = 1 to \cntQ)} \steps{\STEP}
\statement{ Ecouter \audio et compléter le texte:
<div style="background-color:#AAFFFF; padding:1%; margin:5% 15%;"> \for{k = 1 to \cntQ}{ \texte[2*\k-1;] \embed{\STEP[\k], 10} } </div> }
\answer{}{\trou[1]}{type=case} \answer{}{\trou[2]}{type=case} \answer{}{\trou[3]}{type=case} \answer{}{\trou[4]}{type=case} \answer{}{\trou[5]}{type=case} \answer{}{\trou[6]}{type=case} \answer{}{\trou[7]}{type=case} \answer{}{\trou[8]}{type=case} \answer{}{\trou[9]}{type=case} \answer{}{\trou[10]}{type=case} \answer{}{\trou[11]}{type=case} \answer{}{\trou[12]}{type=case} \answer{}{\trou[13]}{type=case} \answer{}{\trou[14]}{type=case} \answer{}{\trou[15]}{type=case} \answer{}{\trou[16]}{type=case} \answer{}{\trou[17]}{type=case} \answer{}{\trou[18]}{type=case} \answer{}{\trou[19]}{type=case} \answer{}{\trou[20]}{type=case}
:dictee1.mp3 Un ??chasseur?? sachant ??chasser?? doit ??savoir?? chasser sans son ??chien?? .
:dictee2.mp3 Voici ??son?? chien et ??son?? chat qui ??se?? battent.
\title{Texte à trous (dictée)}
\text{cnt_record = wims(recordcnt data)} \text{H = randint(\cnt_record)} \text{texte = wims(record \H of data)} \text{bande = wims(word 1 of \texte)} \text{texte = wims(replace internal \bande by in \texte)}
\matrix{texte = slib(text/cutchoices \texte)} \text{cntrow = rows(\texte)} \integer{cntQ = \cntrow/2-1} \text{trou = } \for{i = 1 to \cntQ}{ \text{trou1 = \texte[2*\i;]} \text{trou = \trou, \trou1} } \text{trou = wims(nonempty items \trou)}
\text{audio = (media/audio \bande )} \text{STEP = wims(makelist r x for x = 1 to \cntQ)}
\steps{\STEP}
\statement{ Ecouter \audio et compléter le texte:
<div style="background-color : #AAFFFF; padding : 1%; margin : 5% 15%;"> \for{k = 1 to \cntQ}{ \texte[2*\k-1;] \embed{\STEP[\k], 10} } \texte[2*\cntQ+1;] </div> }
\answer{}{\trou[1]}{type=case} \answer{}{\trou[2]}{type=case} \answer{}{\trou[3]}{type=case} \answer{}{\trou[4]}{type=case} \answer{}{\trou[5]}{type=case} \answer{}{\trou[6]}{type=case} \answer{}{\trou[7]}{type=case} \answer{}{\trou[8]}{type=case} \answer{}{\trou[9]}{type=case} \answer{}{\trou[10]}{type=case} \answer{}{\trou[11]}{type=case} \answer{}{\trou[12]}{type=case} \answer{}{\trou[13]}{type=case} \answer{}{\trou[14]}{type=case} \answer{}{\trou[15]}{type=case} \answer{}{\trou[16]}{type=case} \answer{}{\trou[17]}{type=case} \answer{}{\trou[18]}{type=case} \answer{}{\trou[19]}{type=case} \answer{}{\trou[20]}{type=case}
\title{Texte à trous avec choix} \text{cnt_record= wims(recordcnt data)} \text{H=randint(\cnt_record)} \text{texte= wims(record \H of data)}
\matrix{texte = slib(text/cutchoices \texte)} \text{cntrow=rows(\texte)} \integer{cntQ=\cntrow/2-1} \text{trou =} \text{rep = } \for{i= 1 to \cntQ}{ \text{trou1=\texte[2*\i;]} \text{cnt = items(\trou1)} \text{mix = shuffle(\cnt)} \matrix{trou=\trou \trou1[\mix]} \text{rep = \rep,position(1,)} } \text{rep =wims(nonempty items \rep)}
\text{STEP = wims(makelist r x for x=1 to \cntQ)} \steps{\STEP}
\statement{ Compléter le texte : <div style="background-color:#AAFFFF; padding:1%; margin:5% 15%;"> \for{k = 1 to \cntQ}{ \texte[2*\k-1;] \embed{\STEP[\k]} } \texte[2*\cntQ+1;] </div> }
\answer{}{\rep[1];\trou[1;]}{type=menu} \answer{}{\rep[2];\trou[2;]}{type=menu} \answer{}{\rep[3];\trou[3;]}{type=menu} \answer{}{\rep[4];\trou[4;]}{type=menu} \answer{}{\rep[5];\trou[5;]}{type=menu} \answer{}{\rep[6];\trou[6;]}{type=menu} \answer{}{\rep[7];\trou[7;]}{type=menu} \answer{}{\rep[8];\trou[8;]}{type=menu} \answer{}{\rep[9];\trou[9;]}{type=menu} \answer{}{\rep[10];\trou[10;]}{type=menu} \answer{}{\rep[11];\trou[11;]}{type=menu} \answer{}{\rep[12];\trou[12;]}{type=menu} \answer{}{\rep[13];\trou[13;]}{type=menu} \answer{}{\rep[14];\trou[14;]}{type=menu} \answer{}{\rep[15];\trou[15;]}{type=menu} \answer{}{\rep[16];\trou[16;]}{type=menu} \answer{}{\rep[17];\trou[17;]}{type=menu} \answer{}{\rep[18];\trou[18;]}{type=menu} \answer{}{\rep[19];\trou[19;]}{type=menu} \answer{}{\rep[20];\trou[20;]}{type=menu}
: Un ??chasseur,chaceur?? sachant ??chasser,chassé?? doit ??savoir?? chasser sans ??son,sont ??chien.
: Voici ??son,sont,con?? chien et ??son,sont,con?? chat qui ??se,ce,ceux?? battent.
\title{Texte à trous avec choix} \text{cnt_record= wims(recordcnt data)} \text{H=randint(\cnt_record)} \text{texte= wims(record \H of data)} \matrix{texte = slib(text/cutchoices \texte)} \text{cntrow = rows(\texte)} \integer{cntQ = \cntrow/2-1} \text{trou = } \text{rep = } \for{i= 1 to \cntQ}{ \text{trou1 = \texte[2*\i;]} \text{cnt = items(\trou1)} \text{mix = shuffle(\cnt)} \matrix{trou = \trou \trou1[\mix]} \text{rep = \rep,position(1,)} } \text{rep = wims(nonempty items \rep)} \text{STEP = wims(makelist r x for x = 1 to \cntQ)} \steps{\STEP}
\statement{ Compléter le texte :
<div style="background-color:#AAFFFF; padding:1%; margin:5% 15%;"> \for{k = 1 to \cntQ}{ \texte[2*\k-1;] \embed{\STEP[\k]} } \texte[2*\cntQ+1;] </div> }
\answer{}{\rep[1];\trou[1;]}{type=menu} \answer{}{\rep[2];\trou[2;]}{type=menu} \answer{}{\rep[3];\trou[3;]}{type=menu} \answer{}{\rep[4];\trou[4;]}{type=menu} \answer{}{\rep[5];\trou[5;]}{type=menu} \answer{}{\rep[6];\trou[6;]}{type=menu} \answer{}{\rep[7];\trou[7;]}{type=menu} \answer{}{\rep[8];\trou[8;]}{type=menu} \answer{}{\rep[9];\trou[9;]}{type=menu} \answer{}{\rep[10];\trou[10;]}{type=menu} \answer{}{\rep[11];\trou[11;]}{type=menu} \answer{}{\rep[12];\trou[12;]}{type=menu} \answer{}{\rep[13];\trou[13;]}{type=menu} \answer{}{\rep[14];\trou[14;]}{type=menu} \answer{}{\rep[15];\trou[15;]}{type=menu} \answer{}{\rep[16];\trou[16;]}{type=menu} \answer{}{\rep[17];\trou[17;]}{type=menu} \answer{}{\rep[18];\trou[18;]}{type=menu} \answer{}{\rep[19];\trou[19;]}{type=menu} \answer{}{\rep[20];\trou[20;]}{type=menu}
la position des items sur lesquels on doit cliquer ; les items en questionPar exemple :
1,4;le,chien,et,le,chatLe fichier de données datamark adapté à l'exercice qui suit est de la forme :
:??le?? chien et ??le?? chat ??La?? montagne lui plaît
:??un??village et ??une?? ville
\title{Marquer les articles} \text{cnt_record= wims(recordcnt datamark)} \text{H=randint(\cnt_record)} \matrix{texte=randtow( wims(record 0 of datamark))} \matrix{texte = slib(text/marktext \texte)} \text{cnt = \texte[3;]} \matrix{texte=\texte[1,2;]}
\statement{ <div style="padding:1%;margin:5% 15%;"> \for{s = 1 to \cnt}{\embed{reply1,\s} } }
\answer{}{\texte}{type=mark}
\title{Marquer les articles} \text{cnt_record = wims(recordcnt datamark)} \text{H = randint(\cnt_record)} \text{texte = randtow(wims(record 0 of datamark))} \text{texte = wims(embraced randitem \texte)} \text{test = wims( 1 to 2 of wims(replace internal ?? by || in \texte))} \text{u = \test issametext || ? 1: 0} \matrix{texte = slib(text/cutchoices \texte)} \text{cntrow = rows(\texte)} \text{TEXTE = } \text{rep = } \text{cnt = 0} \text{texte = wims(replace internal , by XXX in \texte)} \for{i = 1 to \cntrow}{ \text{H = \texte[\i;]} \text{cnt_w=wims(wordcnt \H)} \text{j = \i%2} \text{rep = \j = \u ? \rep, wims(values \cnt + x for x = 1 to \cnt_w)} \integer{cnt = \cnt+\cnt_w} \text{TEXTE = \TEXTE, wims( \H)} }
\text{TEXTE = wims(nonempty items \TEXTE)} \text{TEXTE1 = wims(replace internal XXX by in \TEXTE)} \text{rep = wims(nonempty items \rep)}
\statement{ <div style="background-color:#AAFFFF; padding:1%; margin:5% 15%;"> \for{k = 1 to \cnt}{ \if{XXX isin \TEXTE[\k]}{ \embed{reply1,\k}, }{\embed{reply1,\k} } } </div> }
\answer{}{\rep;\TEXTE1}{type=mark}{option=split}
document d'aide à la création de QCM.
: qcm,modtool,wimshelp, interactive mathematics, interactive math, server side interactivity
Veuillez noter que les pages WIMS sont générées interactivement; elles ne sont pas des fichiers HTML ordinaires. Elles doivent être utilisées interactivement EN LIGNE. Il est inutile pour vous de les ramasser par un programme robot.
Description: document d'aide à la création de QCM. interactive exercises, online calculators and plotters, mathematical recreation and games
Keywords: interactive mathematics, interactive math, server side interactivity, help, qcm,modtool,wimshelp