Rev 7097 | Rev 9980 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 7097 | Rev 9925 | ||
---|---|---|---|
Line 1... | Line 1... | ||
1 | type=first |
1 | type=first |
2 | textarea="data1 data2 data3 data4 data5 data6 data7 data8 data9 data10" |
2 | textarea="data1 data2 data3 data4 data5 data6 data7 data8 data9 data10" |
3 | :Questions à choix multiples |
3 | :Questions à choix multiples |
4 | 4 | ||
5 | <p>Cet exercice présente des questions à choix multiples.</p> |
5 | <p>Cet exercice présente des questions à choix multiples.</p> |
6 | <p>Le nombre de questions est limité à 10. On choisit le nombre de questions |
6 | <p>Le nombre de questions est limité à 10. On choisit le nombre de questions |
7 | à présenter à chaque exercice. Ces questions seront pris au hasard ou pas.</p> |
7 | à présenter à chaque exercice. Ces questions seront pris au hasard ou pas.</p> |
8 | <p>Auteur du modèle : Bernadette Perrin-Riou <bpr@math.u-psud.fr></p> |
8 | <p>Auteur du modèle : Bernadette Perrin-Riou <bpr@math.u-psud.fr></p> |
9 | 9 | ||
10 | :%%%%%%%%%%%%%%%%% ATTENTION %%%%%%%%%%%%%%%%%%%% |
10 | :%%%%%%%%%%%%%%%%% ATTENTION %%%%%%%%%%%%%%%%%%%% |
11 | 11 | ||
12 | Enlevez l'en-tête ci-dessus si vous détruisez les balises pour le modèle ! |
12 | Enlevez l'en-tête ci-dessus si vous détruisez les balises pour le modèle ! |
Line 77... | Line 77... | ||
77 | :Mise en aléatoire par des accolades emboitables |
77 | :Mise en aléatoire par des accolades emboitables |
78 | $embraced_randitem |
78 | $embraced_randitem |
79 | \text{accolade=item(1,1 oui, |
79 | \text{accolade=item(1,1 oui, |
80 | 2 non)} |
80 | 2 non)} |
81 | 81 | ||
82 | :Question |
82 | :Question |
83 | <p>Entrez ici la question à poser, selon le format suivant : </p> |
83 | <p>Entrez ici la question à poser, selon le format suivant : </p> |
84 | <ul> |
84 | <ul> |
85 | <li>La première ligne est le texte général.</li> |
85 | <li>La première ligne est le texte général.</li> |
86 | <li>La ligne suivante représente un feedback, qui sera affiché après validation des réponses |
86 | <li>La ligne suivante représente un feedback, qui sera affiché après validation des réponses |
87 | (elle peut être laissée vide).</li> |
87 | (elle peut être laissée vide).</li> |
Line 161... | Line 161... | ||
161 | le troisième jeudi de Novembre |
161 | le troisième jeudi de Novembre |
162 | le quatrième jeudi de Novembre} |
162 | le quatrième jeudi de Novembre} |
163 | 163 | ||
164 | :Question 8 |
164 | :Question 8 |
165 | 165 | ||
166 | \text{data8=Dans le film <i>"Rain Man"</i>, quel acteur a un frère autiste surdoué ? |
166 | \text{data8=Dans le film <i>"Rain Man"</i>, quel acteur a un frère autiste surdoué ? |
167 | <i>Rain Man</i> est un film américain réalisé par Barry Levinson, sorti en 1989 en France. |
167 | <i>Rain Man</i> est un film américain réalisé par Barry Levinson, sorti en 1989 en France. |
168 | 2 |
168 | 2 |
169 | Bruce Willis |
169 | Bruce Willis |
170 | Tom Cruise |
170 | Tom Cruise |
171 | Woody Allen} |
171 | Woody Allen} |
Line 178... | Line 178... | ||
178 | Vrai |
178 | Vrai |
179 | Faux} |
179 | Faux} |
180 | 180 | ||
181 | :Question 10 |
181 | :Question 10 |
182 | 182 | ||
183 | \text{data10=Quel est le premier ballet écrit par Tchaïkovski ? |
183 | \text{data10=Quel est le premier ballet écrit par Tchaïkovski ? |
184 | Le Lac des cygnes a été écrit en 1875 et Casse-noisette en 1891. |
184 | Le Lac des cygnes a été écrit en 1875 et Casse-noisette en 1891. |
185 | 1 |
185 | 1 |
186 | Le Lac des cygnes |
186 | Le Lac des cygnes |
187 | Casse-noisette} |
187 | Casse-noisette} |
188 | 188 | ||
Line 232... | Line 232... | ||
232 | 232 | ||
233 | \integer{first_step=\first_step notwordof 0 ? 1} |
233 | \integer{first_step=\first_step notwordof 0 ? 1} |
234 | \text{option_reaccent=\reaccent!=yes ? noreaccent:} |
234 | \text{option_reaccent=\reaccent!=yes ? noreaccent:} |
235 | \text{nopaste=\paste issametext no ? slib(utilities/nopaste )} |
235 | \text{nopaste=\paste issametext no ? slib(utilities/nopaste )} |
236 | 236 | ||
237 | \text{audio=\audio_file notsametext and \audio_file notsametext no? |
237 | \text{audio=\audio_file notsametext and \audio_file notsametext no? |
238 | <div class="wimscenter">slib(media/audio \imagedir/\audio_file,\player_option,player=\player)</div>} |
238 | <div class="wimscenter">slib(media/audio \imagedir/\audio_file,\player_option,player=\player)</div>} |
239 | 239 | ||
240 | \text{image=\image_file notsametext and \image_file notsametext no? |
240 | \text{image=\image_file notsametext and \image_file notsametext no? |
241 | wims(makelist <img src="\imagedir/x " alt="" /> for x in \image_file)} |
241 | wims(makelist <img src="\imagedir/x " alt="" /> for x in \image_file)} |
242 | 242 | ||
243 | \if{\video_file notsametext and \video_file notsametext no}{ |
243 | \if{\video_file notsametext and \video_file notsametext no}{ |
244 | \text{video_file=http notin \video_file ? \imagedir/\video_file} |
244 | \text{video_file=http notin \video_file ? \imagedir/\video_file} |
245 | \text{video=\video_file notsametext ? <a target="wims_external" href="\video_file">[video] </a>} |
245 | \text{video=\video_file notsametext ? <a target="wims_external" href="\video_file">[video] </a>} |
246 | } |
246 | } |
247 | 247 | ||
248 | \text{style = <style type="text/css"> |
248 | \text{style = <style type="text/css"> |
Line 250... | Line 250... | ||
250 | .feedback{border:1px dashed grey;padding:0.5em;margin:0;} |
250 | .feedback{border:1px dashed grey;padding:0.5em;margin:0;} |
251 | .question {\style_question} |
251 | .question {\style_question} |
252 | .question ol{padding:0px 0em 0px 1.5em;margin:0} |
252 | .question ol{padding:0px 0em 0px 1.5em;margin:0} |
253 | .reponse {\style_reponse} |
253 | .reponse {\style_reponse} |
254 | .oefstatement{\style_oef} |
254 | .oefstatement{\style_oef} |
255 | 255 | ||
256 | .highlight_false{color:red;font-weight:bold;text-decoration:line-through;} |
256 | .highlight_false{color:red;font-weight:bold;text-decoration:line-through;} |
257 | .highlight{font-weight:bold;} |
257 | .highlight{font-weight:bold;} |
258 | .true{color:green;} |
258 | .true{color:green;} |
259 | .incomplete{color:navy;} |
259 | .incomplete{color:navy;} |
260 | \style_css |
260 | \style_css |
Line 264... | Line 264... | ||
264 | \integer{N = min(\cnt_question,\N)} |
264 | \integer{N = min(\cnt_question,\N)} |
265 | \integer{MAX=min(\N*\MAX,\cnt_question)} |
265 | \integer{MAX=min(\N*\MAX,\cnt_question)} |
266 | \text{battage=\alea issametext yes ? shuffle(\data_q,,) : |
266 | \text{battage=\alea issametext yes ? shuffle(\data_q,,) : |
267 | \data_q} |
267 | \data_q} |
268 | \text{battage=wims(nonempty items \battage)} |
268 | \text{battage=wims(nonempty items \battage)} |
269 | 269 | ||
270 | \text{qcm_prompt1=Votre réponse :} |
270 | \text{qcm_prompt1=Votre réponse :} |
271 | \text{qcm_prompt2=La(les) bonne(s) réponse(s) :} |
271 | \text{qcm_prompt2=La(les) bonne(s) réponse(s) :} |
272 | \text{good_answer_text=Bonne réponse} |
272 | \text{good_answer_text=Bonne réponse} |
273 | \text{bad_answer_text=Mauvaise réponse} |
273 | \text{bad_answer_text=Mauvaise réponse} |
274 | \text{incomplete_answer_text=Réponse incomplète} |
274 | \text{incomplete_answer_text=Réponse incomplète} |
Line 288... | Line 288... | ||
288 | \text{QUEST=\battage[\i]=6? \data6} |
288 | \text{QUEST=\battage[\i]=6? \data6} |
289 | \text{QUEST=\battage[\i]=7? \data7} |
289 | \text{QUEST=\battage[\i]=7? \data7} |
290 | \text{QUEST=\battage[\i]=8? \data8} |
290 | \text{QUEST=\battage[\i]=8? \data8} |
291 | \text{QUEST=\battage[\i]=9? \data9} |
291 | \text{QUEST=\battage[\i]=9? \data9} |
292 | \text{QUEST=\battage[\i]=10? \data10} |
292 | \text{QUEST=\battage[\i]=10? \data10} |
293 | 293 | ||
294 | \text{preliminaire_test=\QUEST} |
294 | \text{preliminaire_test=\QUEST} |
295 | \text{preliminaire_test=row(1,\preliminaire_test)} |
295 | \text{preliminaire_test=row(1,\preliminaire_test)} |
296 | \text{inst_audio=wims(getopt audio in \preliminaire_test)} |
296 | \text{inst_audio=wims(getopt audio in \preliminaire_test)} |
297 | \text{inst_image=wims(getopt image in \preliminaire_test)} |
297 | \text{inst_image=wims(getopt image in \preliminaire_test)} |
298 | \text{inst_title=wims(getopt title in \preliminaire_test)} |
298 | \text{inst_title=wims(getopt title in \preliminaire_test)} |
Line 301... | Line 301... | ||
301 | \text{rab_inst=} |
301 | \text{rab_inst=} |
302 | \text{rab_inst=\inst_title notsametext ?\rab_inst<div class="wimscenter">\inst_title</div>} |
302 | \text{rab_inst=\inst_title notsametext ?\rab_inst<div class="wimscenter">\inst_title</div>} |
303 | \text{rab_inst=\inst_intro notsametext ?\rab_inst \inst_intro} |
303 | \text{rab_inst=\inst_intro notsametext ?\rab_inst \inst_intro} |
304 | \text{rab_inst=\inst_image notsametext ? \rab_inst <div class="wimscenter"><img src="\imagedir/\inst_image" alt="" /></div>} |
304 | \text{rab_inst=\inst_image notsametext ? \rab_inst <div class="wimscenter"><img src="\imagedir/\inst_image" alt="" /></div>} |
305 | \if{\inst_audio notsametext }{ |
305 | \if{\inst_audio notsametext }{ |
306 | \text{rab_inst1= . isin \inst_audio or \packs= ? |
306 | \text{rab_inst1= . isin \inst_audio or \packs= ? |
307 | slib(media/audio \imagedir/\inst_audio,\player_option,player=\player):slib(lang/swac \inst_audio,\packs,player=\player,\player_option)} |
307 | slib(media/audio \imagedir/\inst_audio,\player_option,player=\player):slib(lang/swac \inst_audio,\packs,player=\player,\player_option)} |
308 | \text{rab_inst=\rab_inst <div class="wimscenter">\rab_inst1[1;1]</div>} |
308 | \text{rab_inst=\rab_inst <div class="wimscenter">\rab_inst1[1;1]</div>} |
309 | } |
309 | } |
310 | \text{preliminaire=\test_inst=1 ? \rab_inst: } |
310 | \text{preliminaire=\test_inst=1 ? \rab_inst: } |
311 | \text{QUEST=\test_inst=1 ? wims(line 2 to -1 of \QUEST)} |
311 | \text{QUEST=\test_inst=1 ? wims(line 2 to -1 of \QUEST)} |
Line 346... | Line 346... | ||
346 | \matrix{CHOIX=\CHOIX |
346 | \matrix{CHOIX=\CHOIX |
347 | \Choix} |
347 | \Choix} |
348 | \text{H = wims(nospace \QUEST[\debut;])} |
348 | \text{H = wims(nospace \QUEST[\debut;])} |
349 | \text{cnt_c=items(\H)} |
349 | \text{cnt_c=items(\H)} |
350 | \text{Rep = } |
350 | \text{Rep = } |
351 | \for{ k = 1 to \cnt_c}{ |
351 | \for{ k = 1 to \cnt_c}{ |
352 | \text{Rep = \Rep, position(\H[\k],\mix)} |
352 | \text{Rep = \Rep, position(\H[\k],\mix)} |
353 | } |
353 | } |
354 | \text{Rep = wims(sort items wims(nonempty items \Rep))} |
354 | \text{Rep = wims(sort items wims(nonempty items \Rep))} |
355 | \matrix{rep = \rep |
355 | \matrix{rep = \rep |
356 | \Rep} |
356 | \Rep} |
Line 419... | Line 419... | ||
419 | <span class="incomplete">\incomplete_answer_text |
419 | <span class="incomplete">\incomplete_answer_text |
420 | </span>} |
420 | </span>} |
421 | \if{\TEST[\h;3]>0}{<span style="color:red">\bad_answer_text</span>} |
421 | \if{\TEST[\h;3]>0}{<span style="color:red">\bad_answer_text</span>} |
422 | \if{\TEST[\h;3]=0 and \TEST[\h;2]=0}{<span class="true">\good_answer_text</span>} |
422 | \if{\TEST[\h;3]=0 and \TEST[\h;2]=0}{<span class="true">\good_answer_text</span>} |
423 | \if{\answer_given=yes}{ |
423 | \if{\answer_given=yes}{ |
424 | <br/> \qcm_prompt2 |
424 | <br/> \qcm_prompt2 |
425 | <ul class="highlight true"> |
425 | <ul class="highlight true"> |
426 | \for{s=1 to \CNT_choix[\h]}{ |
426 | \for{s=1 to \CNT_choix[\h]}{ |
427 | \if{\s isitemof \rep[\h;]}{ <li>\CHOIX[\h;\s]</li>} |
427 | \if{\s isitemof \rep[\h;]}{ <li>\CHOIX[\h;\s]</li>} |
428 | } |
428 | } |
429 | </ul> |
429 | </ul> |
430 | } |
430 | } |
431 | \if{\explication[\h;] notsametext }{<div class="feedback">\explication[\h;]</div>} |
431 | \if{\explication[\h;] notsametext }{<div class="feedback">\explication[\h;]</div>} |
432 | </div> |
432 | </div> |
433 | } |
433 | } |
434 | { \if{ r \h isitemof \nstep}{ |
434 | { \if{ r \h isitemof \nstep}{ |
435 | <div class="question"> |
435 | <div class="question"> |
436 | <ol> |
436 | <ol> |
437 | \for{s=1 |
437 | \for{s=1 to \CNT_choix[\h]}{ <li>\embed{reply \h , \s}</li> } |
438 | </ol> |
438 | </ol> |
439 | </div> |
439 | </div> |
440 | } |
440 | } |
441 | } |
441 | } |
442 | </ol> |
442 | </ol> |
443 | } |
443 | } |
Line 473... | Line 473... | ||
473 | \text{test1 = wims(listuniq \REP[\H;],\CHOIX[\H;\rep[\H;]])} |
473 | \text{test1 = wims(listuniq \REP[\H;],\CHOIX[\H;\rep[\H;]])} |
474 | \integer{test1 = items(\test1)-items(\CHOIX[\H;\rep[\H;]])} |
474 | \integer{test1 = items(\test1)-items(\CHOIX[\H;\rep[\H;]])} |
475 | \text{test2 = wims(listcomplement \REP[\H;] in \CHOIX[\H;\rep[\H;]])} |
475 | \text{test2 = wims(listcomplement \REP[\H;] in \CHOIX[\H;\rep[\H;]])} |
476 | \text{test3 = wims(listcomplement \CHOIX[\H;\rep[\H;]] in \REP[\H;])} |
476 | \text{test3 = wims(listcomplement \CHOIX[\H;\rep[\H;]] in \REP[\H;])} |
477 | %%% \integer{test4=items(\REP[\H;]) - items(\CHOIX[\H;])} |
477 | %%% \integer{test4=items(\REP[\H;]) - items(\CHOIX[\H;])} |
478 | \text{test_cnt=\test1, items(\test2),items(\test3)} |
478 | \text{test_cnt=\test1, items(\test2),items(\test3)} |
479 | \integer{cnt_juste= \test_cnt[1]+\test_cnt[2]+\test_cnt[3] =0 ? \cnt_juste + 1} |
479 | \integer{cnt_juste= \test_cnt[1]+\test_cnt[2]+\test_cnt[3] =0 ? \cnt_juste + 1} |
480 | \matrix{TEST=\TEST |
480 | \matrix{TEST=\TEST |
481 | \test_cnt} |
481 | \test_cnt} |
482 | } |
482 | } |
483 | 483 | ||
484 | test1 = 0 rep < juste |
484 | test1 = 0 rep < juste |
485 | test2 nombre de réponses dites justes et en fait fausses |
485 | test2 nombre de réponses dites justes et en fait fausses |
486 | test3 nombre de réponses dites fausses et en fait justes |
486 | test3 nombre de réponses dites fausses et en fait justes |
487 | 487 | ||
488 | totalement justes : test1=0, test2=0 test3=0 |
488 | totalement justes : test1=0, test2=0 test3=0 |
489 | partiellement justes : |
489 | partiellement justes : |
490 | 490 | ||
491 | \real{v=\cnt_juste/\CNT[\step-1;\N]} |
491 | \real{v=\cnt_juste/\CNT[\step-1;\N]} |
492 | 492 | ||
493 | \text{nstep = \v >= \percent ? \STEPS[\step;]:} |
493 | \text{nstep = \v >= \percent ? \STEPS[\step;]:} |
494 | 494 | ||
Line 517... | Line 517... | ||
517 | 517 | ||
518 | \text{test=wims(rows2lines \explication)} |
518 | \text{test=wims(rows2lines \explication)} |
519 | \text{test=wims(lines2items \test)} |
519 | \text{test=wims(lines2items \test)} |
520 | \text{test=wims(items2words \test)} |
520 | \text{test=wims(items2words \test)} |
521 | \text{test=wims(nospace \test)} |
521 | \text{test=wims(nospace \test)} |
522 | feedback{1=1}{\explication |
522 | feedback{1=1}{\explication |
523 | \if{\test notsametext}{ |
523 | \if{\test notsametext}{ |
524 | <div class="reponse"><ol> |
524 | <div class="reponse"><ol> |
525 | \for{w = 1 to \MAX}{ |
525 | \for{w = 1 to \MAX}{ |
526 | \if{\explication[\w;] notsametext } |
526 | \if{\explication[\w;] notsametext } |
527 | {<li style="list-style:decimal;" value="\w">\explication[\w;] </li>} |
527 | {<li style="list-style:decimal;" value="\w">\explication[\w;] </li>} |