Subversion Repositories wimsdev

Rev

Rev 11375 | Rev 13382 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 11375 Rev 12168
Line 1... Line 1...
1
type=question
1
type=question
-
 
2
textarea="instruction data1 data2 data3 data4 data5 data6 data7 data8 data9 data10"
2
textarea="data1 data2 data3 data4 data5 data6 data7 data8 data9 data10"
3
asis="data1 data2 data3 data4 data5 data6 data7 data8 data9 data10"
3
:Questions à choix multiples
4
:Diverses preguntes consecutives, totes del tipus QCM
4
 
5
 
5
<p>Cet exercice présente des questions à choix multiples.</p>
6
<p>Aquest exercici presenta preguntes d'opció múltiple.</p>
6
<p>Le nombre de questions est limité à 10. On choisit le nombre de questions
7
<p>El nombre de preguntes està limitat a 10. Es pot triar el nombre de preguntes
7
à présenter à chaque exercice. Ces questions seront pris au hasard ou pas.</p>
8
que es presentarà a cada exercici. Aquestes preguntes es realitzaran de forma aleatòria o no.</p>
8
<p>Auteur du modèle : Bernadette Perrin-Riou <bpr@math.u-psud.fr></p>
9
<p>Autor del model : Bernadette Perrin-Riou <bpr@math.u-psud.fr></p>
9
 
10
 
10
:%%%%%%%%%%%%%%%%%      ATTENTION      %%%%%%%%%%%%%%%%%%%%
11
:%%%%%%%%%%%%%%%%%      ATTENTION      %%%%%%%%%%%%%%%%%%%%
11
 
12
 
12
Enlevez l'en-tête ci-dessus si vous détruisez les balises pour le modèle !
13
Enlevez l'en-tête ci-dessus si vous détruisez les balises pour le modèle !
13
(Ce sont les lignes qui commencent par un ':'.)
14
(Ce sont les lignes qui commencent par un ':'.)
14
Sinon l'exercice risque de ne pas pouvoir repasser sous Createxo.
15
Sinon l'exercice risque de ne pas pouvoir repasser sous Createxo.
15
 
16
 
16
:%%%%%%%% Paramètres d'exemples à redéfinir %%%%%%%%%%%%%%%%%
17
:%%%%%%%% Paramètres d'exemples à redéfinir %%%%%%%%%%%%%%%%%
17
 
18
 
18
:\title{QCM à la suite}
19
:\title{Opció múltiple avançada}
19
:\author{Bernadette, Perrin-Riou}
20
:\author{Bernadette, Perrin-Riou}
20
:\email{bpr@math.u-psud.fr}
21
:\email{bpr@math.u-psud.fr}
21
:\credits{}
22
:\credits{Image de Pfly [CC BY-SA 2.5], via Wikimedia Commons}
22
:Instruction Globale
23
:Instruccions Globals
23
Tapez ici une instruction commune à toutes les questions de l'exercice
24
Escriviu aquí una instrucció comuna a totes les preguntes de l'exercici
24
$embraced_randitem
25
$embraced_randitem
25
\text{instruction=Instruction globale : Répondez à chaque question d'une première série, validez, puis répondez aux questions de la seconde série.}
26
\text{instruction=Respondre cada pregunta de la primera sèrie, validar i respondre les preguntes de la segona sèrie.}
26
 
27
 
27
:Ordre aléatoire
28
:Ordre aleatori
28
Tapez "yes" pour activer le tirage au sort des questions.
29
Trieu "" per activar l'aleatorietat de les preguntes.
29
Tapez "no" pour les présenter dans l'ordre  elles sont rentrées
30
Trieu "no" per presentar-les en l'ordre en què es van entrar.
30
\text{alea=yes}
31
\text{alea=item(1,sí,no)}
31
 
32
 
32
:Nombre maximum de questions par étape
33
:Nombre màxim de preguntes per etapa
33
WIMS divisera automatiquement votre exercice en étapes en fonction du nombre total de questions définies et du nombre de questions par étapes.
34
WIMS dividirà automàticament el vostre exercici en etapes en funció del nombre total de preguntes establertes i del nombre de preguntes per etapa.
34
\text{N=4}
35
\text{N=3}
35
 
36
 
36
:Nombre maximum d'étapes
37
:Nombre màxim d'etapes
37
WIMS divisera automatiquement votre exercice en étapes en fonction du nombre total de questions définies et du nombre de questions par étapes.
38
WIMS dividirà automàticament el vostre exercici en etapes en funció del nombre total de preguntes establertes i del nombre de preguntes per etapa.
38
\text{MAX=2}
39
\text{MAX=2}
39
 
40
 
-
 
41
:Text al costat de la resposta donada un cop l'alumne ha respost.
-
 
42
Aquestes paraules intervenen una vegada que les preguntes han estat respostes.
-
 
43
És recomanable provar l'exercici de demostració amb
-
 
44
respostes correctes i incorrectes per entendre on intervenen aquestes paraules.
40
:textes pour le feedback "Réponse donnée"
45
\text{qcm_prompt1=La vostra resposta:}
41
 
46
 
42
\text{qcm_prompt1=Votre réponse :}
47
:Text per al feedback per a "La resposta correcta"
43
 
48
 
44
:textes pour le feedback "La bonne réponse"
49
\text{qcm_prompt2=La(es) resposta(es) correcta(es) era(en):}
45
 
50
 
46
\text{qcm_prompt2=La bonne réponse :}
51
:Text per al feedback per a "La resposta correcta"
47
 
52
 
48
:textes pour le feedback "Réponse correcte"
53
\text{good_answer_text=Resposta correcta!}
49
 
54
 
50
\text{good_answer_text=Bonne réponse}
55
:Text per al feedback per a "Resposta incorrecta"
51
 
56
 
52
:textes pour le feedback "Réponse incorrecte"
57
\text{bad_answer_text=Resposta incorrecta!}
53
 
58
 
54
\text{bad_answer_text=Mauvaise réponse}
59
:Text per al feedback per a "Resposta incompleta"
55
 
60
 
56
:textes pour le feedback "Réponse incomplète"
61
\text{incomplete_answer_text=Resposta incompleta...}
57
 
62
 
58
\text{incomplete_answer_text=Réponse incomplète}
63
:Estil CSS per a les preguntes
59
 
64
 
60
:Style css pour la question
65
\text{style_question=background-color: #F2F9FC;}
61
 
66
 
62
\text{style_question=background-color: #FFFFCC;
-
 
63
color:black;
-
 
64
margin: 0 1em 0.5em 1em;
67
:Estil CSS per a les  respostes
65
padding: 0.2em;}
-
 
66
 
68
 
67
:Style css pour la réponse
69
\text{style_reponse=background-color: #FFCC99;}
68
 
70
 
69
\text{style_reponse=background-color: #FFCC99;
-
 
70
color: black;
-
 
71
margin: 0 1em;
-
 
72
padding: 0.2em;}
-
 
73
 
-
 
74
:Pourcentage de réussite demandée pour passer à l'étape suivante (si MAX >1)
71
:Percentatge d'èxit necessari per passar a la següent etapa (si el nombre màxim d'etapes > 1)
75
 
72
 
76
\text{percent=0}
73
\text{percent=0}
77
 
74
 
78
:Mise en aléatoire par des accolades emboitables
75
:S'accepta text aleatori posat entre claus
79
$embraced_randitem
76
$embraced_randitem
80
\text{accolade=item(1,1 oui,
77
\text{accolade=item(2, sí, no)}
81
2 non)}
-
 
82
 
78
 
83
:Affichage des bonnes réponses
79
:Mostrar les respostes correctes
84
Si oui, la liste des bonnes réponses sera affichée une fois la réponse donnée par l'apprenant.
80
Si poseu sí, les respostes correctes es mostraran una vegada l'alumne respongui les preguntes.
85
\text{answer_given=item(1, oui, non)}
81
\text{answer_given=item(1, sí, no)}
86
 
82
 
87
:Question
83
:Pregunta
-
 
84
<p>Introduïu aquí la pregunta que voleu fer, d'acord amb el següent format:</p>
-
 
85
<ol>
-
 
86
<li>La primera línia conté l'enunciat de la pregunta.</li>
-
 
87
<li> La segona línia representa un feedback, que es mostrarà després de la validació de les respostes
-
 
88
 (es pot deixar en blanc).</li>
-
 
89
<li>Introduïu a la tercera línia la llista dels números de les respostes correctes, separats per comes. (Els números representen l'ordre en què s'escriuen les propostes a continuació)</li>
-
 
90
<li>Cada línia següent representa les diferents propostes de resposta.</li></ol>
-
 
91
<div style="border-left:2px solid orange;width:45em;background-color:white;padding:1em .5em;">Exemple: <br/>
-
 
92
<pre>Enunciat de la Pregunta 1
-
 
93
Explicació (feedback) que s'ha de mostrar en cas de resposta incorrecta a la pregunta
-
 
94
Números que indiquen el lloc de les respostes correctes
-
 
95
Proposta 1
-
 
96
Proposta 2
-
 
97
Proposta 3</pre></div>
-
 
98
<p class="oef_indbad"><strong>Atenció :</strong>aquí estan prohibits els punt i coma.</p>
-
 
99
<hr/>
88
<p>Entrez ici la question à poser, selon le format suivant : </p>
100
<p><em>Opcional:</em> podeu afegir opcionalment una primera línia que contindrà variables per inserir un títol, una imatge, un so. (nb: ha d'estar en una classe o mòdul per transferir aquests fitxers). En aquest cas, serà la 2a línia (i no la 1a) que representi l'enunciat, la 3a línia el feedback, etc.</p>
-
 
101
Les possibles variables són:
89
<ul>
102
<ul>
90
<li>La première ligne est le texte général.</li>
-
 
91
<li>La ligne suivante représente un feedback, qui sera affiché après validation des réponses
103
  <li><code>Qtitle</code> : mostra un títol al principi de la pregunta. (per exemple, per indicar el tema)</li>
92
(elle peut être laissée vide).</li>
-
 
93
<li>Entrez ensuite la liste des numéros des bonnes réponses, séparées par des virgules.</li>
104
  <li><code>Qimage</code> : si s'especifica un fitxer d'imatge, aquesta es mostrarà al principi de la pregunta (només funciona en un mòdul o classe).</li>
94
<li>Les lignes suivantes sont formées des différentes propositions de réponses.</li></ul>
105
  <li><code>Qaudio</code> : si s'indica un fitxer de so, es mostrarà al principi de la pregunta (només funciona en un mòdul o una classe. Bugs coneguts amb Safari).</li>
-
 
106
  </ul>
95
<p style="border-left:2px solid orange;width:45em;background-color:white;padding-left:1em;">Exemple : <br/><code>Titre de la Question n°1<br/>
107
<div style="border-left:2px solid orange;width:45em;background-color:white;padding:1em .5em;">Exemple : <br/>
-
 
108
<pre>Qtitle="Títol de la pregunta 2" Qimage="image.jpg" Qaudio="son.mp3"
-
 
109
Enunciat de la pregunta 2
96
explication pour le feedback affiché en cas de mauvaise réponse à la question n°1<br/>
110
Explicació (feedback) que s'ha de mostrar en cas de resposta incorrecta a la pregunta 2
97
Numéro de la bonne réponse<br/>
111
Número(s) que indiquin el lloc de les respostes correctes
98
Proposition n°1<br/>
112
Proposta 1
99
Proposition n°2<br/>
113
Proposta 2
100
Proposition n°3</code></p>
114
Proposta 3</pre></div>
101
<p>Attention : les point-virgules sont interdits ici.</p>
-
 
102
\text{data1=En quelle année eut lieu la bataille de Marignan ?
115
\text{data1=asis(En quelle année eut lieu la bataille de Marignan ?
103
Marignan fut la première victoire du jeune roi François Ier, la première année de son règne.
116
Marignan fut la première victoire du jeune roi François Ier, la première année de son règne.
104
1
117
1
105
1515
118
1515
106
1414
119
1414
107
1313
120
1313
108
1616}
121
1616)}
-
 
122
 
-
 
123
:Pregunta 2
109
 
124
 
110
:Question 2
-
 
111
 
-
 
112
\text{data2=En 2010, quelle est la ville la plus peuplée au monde ?
125
\text{data2=asis(En 2014, quelle est la ville la plus peuplée au monde ?
113
C'est Tokyo, la capitale du Japon (35 millions d'habitants), loin devant Mexico et New York (19 millions d'habitants chacune).
126
C'est Tokyo, la capitale du Japon (37,7 millions d'habitants), loin devant les autres (qui ont entre 20 et 24 millions d'habitants). <p class="right">Source <a href="http://www.populationdata.net/index2.php?option=palmares&rid=4&nom=grandes-villes-du-monde" target="_blank">populationdata.net</a></p>
114
1
127
7
-
 
128
Beijing
-
 
129
Karachi
115
Tokyo
130
Manille
116
Mexico
131
Mexico
117
New York
132
New York
-
 
133
Shanghaï
118
Beijing}
134
Tokyo)}
119
 
135
 
120
:Question 3
136
:Pregunta 3
121
 
137
 
122
\text{data3=Quel est le nom de ce fleuve : <img src="http://upload.wikimedia.org/wikipedia/commons/e/e4/Mekong_River_watershed.png"/>
138
\text{data3=asis(Quel est le nom de ce fleuve : <img src="http://upload.wikimedia.org/wikipedia/commons/e/e4/Mekong_River_watershed.png"/>
123
Environ 70 millions d'habitants vivent directement dans le bassin versant du Mékong.
139
Environ 70 millions d'habitants vivent directement dans le bassin versant du Mékong.
124
1
140
1
125
Le Mékong
141
Le Mékong
126
Le Yangzi Jiang
142
Le Yangzi Jiang
127
La Volga
143
La Volga
128
Le Danube}
144
Le Danube)}
129
 
145
 
130
:Question 4
146
:Pregunta 4
131
 
147
 
-
 
148
\text{data4=asis(Qtitle="En Peinture"
132
\text{data4=Parmi ces différents peintres, lesquels font partie du mouvement impressionniste ?
149
Parmi ces différents peintres, lesquels font partie du mouvement impressionniste ?
133
Ingres est associé au courant Romantique, et Raphaël à la Renaissance.
150
Ingres est associé au courant Romantique, et Raphaël à la Renaissance.
134
1,3
151
1,3
135
Edgar Degas
152
Edgar Degas
136
Dominique Ingres
153
Dominique Ingres
137
Claude Monet
154
Claude Monet
138
Raphaël}
155
Raphaël)}
139
 
156
 
140
:Question 5
157
:Pregunta 5
141
 
158
 
-
 
159
\text{data5=asis(Qtitle=ANIMAUX
142
\text{data5=Quel est le cri du chameau ?
160
Quel est le cri du chameau ?
143
Le brairement est le cri de l'âne, le bêlement : celui des moutons et des chèvres.
161
Le brairement est le cri de l'âne, le bêlement : celui des moutons et des chèvres.
144
1
162
1
145
Le blatèrement
163
Le blatèrement
146
Le brairement
164
Le brairement
147
Le bêlement}
165
Le bêlement)}
148
 
166
 
149
:Question 6
167
:Pregunta 6
150
 
168
 
-
 
169
\text{data6=asis(Qtitle=Chimie
151
\text{data6=Quelle est la formule chimique de la testostérone ?
170
Quelle est la formule chimique de la testostérone ?
152
C<sub>8</sub>H<sub>10</sub>N<sub>4</sub>O<sub>2</sub> correspond à la caféine, C<sub>3</sub>H<sub>5</sub>N<sub>3</sub>O<sub>9</sub> à la nitroglycérine, et  C<sub>17</sub>H<sub>19</sub>NO<sub>3</sub> la morphine
171
C<sub>8</sub>H<sub>10</sub>N<sub>4</sub>O<sub>2</sub> correspond à la caféine, C<sub>3</sub>H<sub>5</sub>N<sub>3</sub>O<sub>9</sub> à la nitroglycérine, et C<sub>17</sub>H<sub>19</sub>NO<sub>3</sub> la morphine
153
4
172
4
154
C<sub>8</sub>H<sub>10</sub>N<sub>4</sub>O<sub>2</sub>
173
C<sub>8</sub>H<sub>10</sub>N<sub>4</sub>O<sub>2</sub>
155
C<sub>3</sub>H<sub>5</sub>N<sub>3</sub>O<sub>9</sub>
174
C<sub>3</sub>H<sub>5</sub>N<sub>3</sub>O<sub>9</sub>
156
C<sub>17</sub>H<sub>19</sub>NO<sub>3</sub>
175
C<sub>17</sub>H<sub>19</sub>NO<sub>3</sub>
157
C<sub>19</sub>H<sub>28</sub>O<sub>2</sub>}
176
C<sub>19</sub>H<sub>28</sub>O<sub>2</sub>)}
158
 
177
 
159
:Question 7
178
:Pregunta 7
160
 
179
 
161
\text{data7=À partir de quel jour le beaujolais nouveau est-il disponible en vente  ?
180
\text{data7=asis(À partir de quel jour le beaujolais nouveau est-il disponible en vente ?
162
Le beaujolais nouveau est un vin de primeur, c'est-à-dire un vin de l'année même, dont la commercialisation est autorisée immédiatement après la fin de la vinification.
181
Le beaujolais nouveau est un vin de primeur, c'est-à-dire un vin de l'année même, dont la commercialisation est autorisée immédiatement après la fin de la vinification.
163
3
182
3
164
le premier jeudi de Novembre
183
le premier jeudi de Novembre
165
le deuxième jeudi de Novembre
184
le deuxième jeudi de Novembre
166
le troisième jeudi de Novembre
185
le troisième jeudi de Novembre
167
le quatrième jeudi de Novembre}
186
le quatrième jeudi de Novembre)}
168
 
187
 
169
:Question 8
188
:Pregunta 8
170
 
189
 
171
\text{data8=Dans le film  <i>"Rain Man"</i>, quel acteur a un frère autiste surdoué ?
190
\text{data8=asis(Dans le film <i>"Rain Man"</i>, quel acteur a un frère autiste surdoué ?
172
<i>Rain Man</i> est un film américain réalisé par Barry Levinson, sorti en 1989 en France.
191
<i>Rain Man</i> est un film américain réalisé par Barry Levinson, sorti en 1989 en France.
173
2
192
2
174
Bruce Willis
193
Bruce Willis
175
Tom Cruise
194
Tom Cruise
176
Woody Allen}
195
Woody Allen)}
177
 
-
 
178
:Question 9
-
 
179
 
196
 
-
 
197
:Pregunta 9
-
 
198
 
180
\text{data9=Le ski nautique est une discipline olympique depuis 1976.
199
\text{data9=asis(Le ski nautique est une discipline olympique depuis 1976.
181
L'apparition du ski nautique aux jeux olympiques ne date que de 2004. Toutefois, il avait été sport de démonstration en 1972.
200
L'apparition du ski nautique aux jeux olympiques ne date que de 2004. Toutefois, il avait été sport de démonstration en 1972.
182
2
201
2
183
Vrai
202
Vrai
184
Faux}
203
Faux)}
185
 
-
 
186
:Question 10
-
 
187
 
204
 
-
 
205
:Pregunta 10
-
 
206
 
-
 
207
\text{data10=asis(Qtitle=Musique
188
\text{data10=Quel est le premier ballet écrit par Tchaïkovski ?
208
Quel est le premier ballet écrit par Tchaïkovski ?
189
Le Lac des cygnes a été écrit en 1875 et Casse-noisette en 1891.
209
Le Lac des cygnes a été écrit en 1875 et Casse-noisette en 1891.
190
1
210
1
191
Le Lac des cygnes
211
Le Lac des cygnes
192
Casse-noisette}
212
Casse-noisette)}
193
 
213
 
-
 
214
:Tipus de respostes
-
 
215
El tipus "checkbox" (botons quadrats) permet diverses respostes per pregunta. <br/>
-
 
216
Mentre que el tipus "radio" (botons rodons) només permet una resposta per pregunta.
-
 
217
\text{format=item(1, checkbox, radio)}
-
 
218
 
194
:
219
:
195
\language{fr}
220
\language{ca}
196
\computeanswer{no}
221
\computeanswer{no}
197
\format{html}
222
\format{html}
198
\text{notepad=slib(utilities/notepad Notepad,small)}
-
 
199
\text{audio_file=no}
-
 
200
\text{reading_file=no}
-
 
201
\text{image_file=no}
-
 
202
\text{video_file=no}
-
 
203
 
223
 
204
 
-
 
205
\text{format=checkbox}
-
 
206
 
-
 
207
\text{style_oef=}
-
 
208
\text{style_css=ol li {list-style: upper-alpha; }}
-
 
209
\text{paste=yes}
224
\text{paste=yes}
210
\text{pos_rep=inside}
-
 
211
\text{second_step=yes}
-
 
212
\text{first_step=1}
-
 
-
 
225
 
213
\text{option=}
226
\text{option=}
214
\text{packs=}
-
 
215
\text{player=---}
-
 
216
\text{player_option= autostart="false" loop="false"}
-
 
217
 
227
 
218
:%%%%%%%%%%%%%% Rien à modifier jusqu'à l'énoncé %%%%%%%%%%%%%%%%
228
:%%%%%%%%%%%%%% Rien à modifier jusqu'à l'énoncé %%%%%%%%%%%%%%%%
219
 
229
 
220
\text{data_q=\data1!= ? 1:}
230
\text{data_q=\data1!= ? 1:}
221
\text{data_q=\data2!= ? wims(append item 2 to \data_q)}
231
\text{data_q=\data2!= ? wims(append item 2 to \data_q)}
Line 226... Line 236...
226
\text{data_q=\data7!= ? wims(append item 7 to \data_q)}
236
\text{data_q=\data7!= ? wims(append item 7 to \data_q)}
227
\text{data_q=\data8!= ? wims(append item 8 to \data_q)}
237
\text{data_q=\data8!= ? wims(append item 8 to \data_q)}
228
\text{data_q=\data9!= ? wims(append item 9 to \data_q)}
238
\text{data_q=\data9!= ? wims(append item 9 to \data_q)}
229
\text{data_q=\data10!= ? wims(append item 10 to \data_q)}
239
\text{data_q=\data10!= ? wims(append item 10 to \data_q)}
230
 
240
 
231
\text{accolade=wims(word 1 of \accolade)}
-
 
232
\text{instruction=\accolade = 1 ? wims(embraced randitem \instruction):\instruction}
241
\text{instruction=\accolade issametext  ? wims(embraced randitem \instruction):\instruction}
233
 
-
 
234
 
242
 
235
\integer{cnt_question=items(\data_q)}
243
\integer{cnt_question=items(\data_q)}
236
 
244
 
237
\text{autocompletion=\format iswordof case ? autocomplete="off"}
-
 
238
\text{player=wims(replace internal - by in \player)}
-
 
239
 
-
 
240
\integer{first_step=\first_step notwordof 0 ? 1}
-
 
241
\text{option_reaccent=\reaccent!=yes ? noreaccent:}
-
 
242
\text{nopaste=\paste issametext no ? slib(utilities/nopaste )}
245
\text{nopaste=\paste issametext no ? slib(utilities/nopaste )}
243
 
-
 
244
\text{audio=\audio_file notsametext  and  \audio_file notsametext no?
-
 
245
<div class="wimscenter">slib(media/audio \imagedir/\audio_file,\player_option,player=\player)</div>}
-
 
246
 
-
 
247
\text{image=\image_file notsametext  and  \image_file notsametext no?
-
 
248
wims(makelist <img src="\imagedir/x " alt="" /> for x in \image_file)}
-
 
249
 
-
 
250
\if{\video_file notsametext  and  \video_file notsametext no}{
-
 
251
  \text{video_file=http notin \video_file ? \imagedir/\video_file}
-
 
252
\text{video=\video_file notsametext ? <a target="wims_external" href="\video_file">[video] </a>}
-
 
253
}
-
 
254
 
246
 
255
\text{style = <style type="text/css">
247
\text{style = <style type="text/css">
256
 .enonce{margin-bottom:0}
248
 .enonce{margin-bottom:0}
-
 
249
 .qcm_prompt2{margin-top:.5em}
-
 
250
 img{vertical-align:middle;}
-
 
251
 .q_num, .panel .wims_title{
-
 
252
 font-size:150%;font-family:Impact, Charcoal, sans-serif;
-
 
253
 color:#777;
-
 
254
 }
257
 .feedback{border:1px dashed grey;padding:0.5em;margin:0;}
255
 .feedback{border:1px dashed grey;padding:0.5em;margin:0;}
-
 
256
 .reponse {
-
 
257
   margin: 0 1em;
-
 
258
   padding: .5em;
-
 
259
   border-radius:5px;
258
 .question {\style_question}
260
   \style_reponse
-
 
261
 }
-
 
262
 .panel{
259
 .question ol{padding:0px 0em 0px 1.5em;margin:0}
263
    padding:.5em 1em .5em 1em;
-
 
264
    margin:.5em 0;
-
 
265
    border:1px solid #d8d8d8;
-
 
266
    border-radius:5px;
-
 
267
    background-color: #f2f2f2;
-
 
268
 }
260
 .reponse {\style_reponse}
269
 .panel.callout{
-
 
270
    border-color:#c5e5f3;
-
 
271
    border-width:2px;
261
 .oefstatement{\style_oef}
272
    \style_question
-
 
273
 }
-
 
274
 .callout .q_num, .callout .wims_title{color:black;}
262
 
275
 
263
 .highlight_false{color:red;font-weight:bold;text-decoration:line-through;}
276
 .panel .wims_title, .panel .wimscenter{margin-top:-1.2em;}
-
 
277
 ol li{margin-bottom: .5em;list-style: upper-alpha;}
264
 .highlight{font-weight:bold;}
278
 input[type='checkbox'] { font-size:150%; }
265
 .true{color:green;}
279
 .strike{text-decoration:line-through;}
266
 .incomplete{color:navy;}
280
 .oef_indpartial{color:navy;}
267
 \style_css
281
 #answeranalysis{display:none;}
268
 </style>
282
 </style>
269
 }
283
}
270
 
284
 
271
\integer{N = min(\cnt_question,\N)}
285
\integer{N = min(\cnt_question,\N)}
272
\integer{MAX=min(\N*\MAX,\cnt_question)}
286
\integer{MAX=min(\N*\MAX,\cnt_question)}
273
\text{battage=\alea issametext yes ? shuffle(\data_q,,) :
287
\text{battage=\alea issametext  ? shuffle(\data_q,,) :\data_q}
274
\data_q}
-
 
275
\text{battage=wims(nonempty items \battage)}
288
\text{battage=wims(nonempty items \battage)}
276
 
289
 
277
\text{qcm_prompt1=Votre réponse :}
-
 
278
\text{qcm_prompt2=La(les) bonne(s) réponse(s) :}
-
 
279
\text{good_answer_text=Bonne réponse}
-
 
280
\text{bad_answer_text=Mauvaise réponse}
-
 
281
\text{incomplete_answer_text=Réponse incomplète}
-
 
282
\text{option=\option noanalyzeprint}
290
\text{option=\option noanalyzeprint}
283
\matrix{question=}
291
\matrix{question=}
284
\matrix{explication=}
292
\matrix{explication=xxx}
285
\matrix{rep=}
293
\matrix{rep=}
286
\text{CNT_choix= }
294
\text{CNT_choix= }
287
\matrix{CHOIX=}
295
\matrix{CHOIX=}
288
\text{PRELIMINAIRE=}
296
\text{PRELIMINAIRE=}
-
 
297
 
289
\for{i= 1 to \MAX}{
298
\for{i= 1 to \MAX}{
290
 \text{QUEST=\battage[\i]=1? \data1}
299
 \matrix{QUEST=\battage[\i]=1? \data1}
291
 \text{QUEST=\battage[\i]=2? \data2}
300
 \matrix{QUEST=\battage[\i]=2? \data2}
292
 \text{QUEST=\battage[\i]=3? \data3}
301
 \matrix{QUEST=\battage[\i]=3? \data3}
293
 \text{QUEST=\battage[\i]=4? \data4}
302
 \matrix{QUEST=\battage[\i]=4? \data4}
294
 \text{QUEST=\battage[\i]=5? \data5}
303
 \matrix{QUEST=\battage[\i]=5? \data5}
295
 \text{QUEST=\battage[\i]=6? \data6}
304
 \matrix{QUEST=\battage[\i]=6? \data6}
296
 \text{QUEST=\battage[\i]=7? \data7}
305
 \matrix{QUEST=\battage[\i]=7? \data7}
297
 \text{QUEST=\battage[\i]=8? \data8}
306
 \matrix{QUEST=\battage[\i]=8? \data8}
298
 \text{QUEST=\battage[\i]=9? \data9}
307
 \matrix{QUEST=\battage[\i]=9? \data9}
299
 \text{QUEST=\battage[\i]=10? \data10}
308
 \matrix{QUEST=\battage[\i]=10? \data10}
300
 
309
 
301
 \text{preliminaire_test=\QUEST}
310
 \text{preliminaire_test=\QUEST}
302
 \text{preliminaire_test=row(1,\preliminaire_test)}
311
 \text{preliminaire_test=row(1,\preliminaire_test)}
303
 \text{inst_audio=wims(getopt audio in \preliminaire_test)}
312
 \text{inst_audio=wims(getopt Qaudio in \preliminaire_test)}
304
 \text{inst_image=wims(getopt image in \preliminaire_test)}
313
 \text{inst_image=wims(getopt Qimage in \preliminaire_test)}
305
 \text{inst_title=wims(getopt title in \preliminaire_test)}
314
 \text{inst_title=wims(getopt Qtitle in \preliminaire_test)}
306
 \text{inst_intro=wims(getopt intro in \preliminaire_test)}
-
 
307
 \text{test_inst=\inst_audio\inst_image\inst_title\inst_intro  notsametext ? 1 : 0}
-
 
-
 
315
 
308
 \text{rab_inst=}
316
 \text{rab_inst=}
309
 \text{rab_inst=\inst_title notsametext ?\rab_inst<div class="wimscenter">\inst_title</div>}
317
 \text{rab_inst=\inst_title notsametext ?\rab_inst <h2 class="wims_title">\inst_title</h2>}
310
 \text{rab_inst=\inst_intro notsametext ?\rab_inst \inst_intro}
-
 
311
 \text{rab_inst=\inst_image notsametext ? \rab_inst <div class="wimscenter"><img src="\imagedir/\inst_image" alt="" /></div>}
318
 \text{rab_inst=\inst_image notsametext ?\rab_inst <div class="wimscenter"><img src="\imagedir/\inst_image" alt="" /></div>}
312
 \if{\inst_audio notsametext }{
319
 \if{\inst_audio notsametext }{
313
     \text{rab_inst1= . isin \inst_audio or \packs= ?
320
     \text{rab_inst1= . isin \inst_audio ?
-
 
321
       <audio controls>
-
 
322
        <source src="\imagedir/\inst_audio" type="audio/mpeg">
314
       slib(media/audio \imagedir/\inst_audio,\player_option,player=\player):slib(lang/swac \inst_audio,\packs,player=\player,\player_option)}
323
        Désolé, votre navigateur est incompatible avec la lecture de fichiers audio.
-
 
324
       </audio>}
315
     \text{rab_inst=\rab_inst <div class="wimscenter">\rab_inst1[1;1]</div>}
325
     \text{rab_inst=\rab_inst <div class="wimscenter audio">\rab_inst1[1;1]</div>}
316
   }
326
 }
-
 
327
 
-
 
328
 \integer{test_inst=\inst_audio\inst_image\inst_title notsametext ? 1 : 0}
317
 \text{preliminaire=\test_inst=1  ? \rab_inst:&nbsp;}
329
 \text{preliminaire=\test_inst=1 ? \rab_inst:&nbsp;}
318
 \text{QUEST=\test_inst=1 ? wims(line 2 to -1 of \QUEST)}
330
 \matrix{QUEST=\test_inst=1 ? \QUEST[2..-1;]}
319
 \matrix{QUEST=\accolade=1 ?wims(embraced randitem \QUEST):\QUEST}
331
 \matrix{QUEST=\accolade issametext oui ?wims(embraced randitem \QUEST):\QUEST}
320
  \matrix{question = \question
332
 \matrix{question = \question
321
  \QUEST[1;]}
333
\QUEST[1;]}
322
  \matrix{PRELIMINAIRE=\PRELIMINAIRE
334
 \matrix{PRELIMINAIRE=\PRELIMINAIRE
323
  \preliminaire}
335
\preliminaire}
-
 
336
 
324
  \text{expl=\QUEST[2;]}
337
 \text{expl=\QUEST[2;]}
325
  \text{ligne=wims(upper \expl)}
338
 \text{ligne=wims(upper \expl)}
326
  \text{ligne=wims(text select ABCDEFGHIJKLMNOPQRSTUVWXYZ in \ligne)}
339
 \text{ligne=wims(text select ABCDEFGHIJKLMNOPQRSTUVWXYZ in \ligne)}
327
  \if{\ligne issametext and \expl notsametext }{
340
 \if{\ligne issametext and \expl notsametext }{
328
  \matrix{explication = \explication ;
341
  \matrix{explication = \explication;}
329
  }
-
 
330
  \integer{debut = 2}
342
  \integer{debut = 2}
331
 }
343
 }
332
 \if{\ligne issametext and \expl issametext }{
344
 \if{\ligne issametext and \expl issametext }{
333
  \matrix{explication = \explication ;
345
  \matrix{explication = \explication;}
334
  }
-
 
335
  \integer{debut = 3}
346
  \integer{debut = 3}
336
  }
347
  }
337
  \if{\ligne notsametext}{
348
  \if{\ligne notsametext}{
338
     \matrix{explication = \explication
349
     \matrix{explication = \explication;\expl}
339
  \expl}
-
 
340
  \integer{debut = 3}
350
  \integer{debut = 3}
341
 }
351
 }
342
  \integer{cnt_choix=rows(\QUEST)-\debut}
352
  \integer{cnt_choix=rows(\QUEST)-\debut}
343
  \text{CNT_choix=\CNT_choix,\cnt_choix}
353
  \text{CNT_choix=\CNT_choix,\cnt_choix}
344
   \text{Choix=}
354
   \text{Choix=}
Line 377... Line 387...
377
wims(makelist x for x = \N*\u -\N+1 to \N*\u)}
387
wims(makelist x for x = \N*\u -\N+1 to \N*\u)}
378
   \text{condstep= wims(values \u+1 for x = (\u-1)*\N +1 to \u*\N)}
388
   \text{condstep= wims(values \u+1 for x = (\u-1)*\N +1 to \u*\N)}
379
   \text{CONDSTEP= wims(append item \condstep to \CONDSTEP)}
389
   \text{CONDSTEP= wims(append item \condstep to \CONDSTEP)}
380
}
390
}
381
 \matrix{STEPS = \STEPS
391
 \matrix{STEPS = \STEPS
382
 wims(makelist r x  for x = \N*\cnt_step-\N+1 to \MAX)
392
 wims(makelist r x for x = \N*\cnt_step-\N+1 to \MAX)
383
}
393
}
384
\matrix{CNT = \CNT
394
\matrix{CNT = \CNT
385
 wims(makelist x  for x = \N*\cnt_step-\N+1 to \MAX)
395
 wims(makelist x for x = \N*\cnt_step-\N+1 to \MAX)
386
}
396
}
387
\text{CONDSTEP=\CONDSTEP, wims(values \cnt_step+1  for x = \N*\cnt_step-\N+1 to \MAX)}
397
\text{CONDSTEP=\CONDSTEP, wims(values \cnt_step+1 for x = \N*\cnt_step-\N+1 to \MAX)}
388
 
398
 
389
\text{nstep=\STEPS[1;]}
399
\text{nstep=\STEPS[1;]}
390
\text{TEST=}
400
\text{TEST=}
-
 
401
\text{explication=\explication[2..-1;]}
-
 
402
 
391
text{testexp=wims(rows2lines \explication)}
403
text{testexp=wims(rows2lines \explication)}
392
text{testexp=wims(lines2items \testexp)}
404
text{testexp=wims(lines2items \testexp)}
393
text{testexp=wims(items2words \testexp)}
405
text{testexp=wims(items2words \testexp)}
394
text{testexp=wims(nospace \testexp)}
406
text{testexp=wims(nospace \testexp)}
395
\nextstep{\nstep}
407
\nextstep{\nstep}
Line 398... Line 410...
398
\text{CONDITION = wims(makelist x for x = 1 to 2*\MAX)}
410
\text{CONDITION = wims(makelist x for x = 1 to 2*\MAX)}
399
\text{CONDITION =wims(items2words \CONDITION)}
411
\text{CONDITION =wims(items2words \CONDITION)}
400
\conditions{\CONDITION}
412
\conditions{\CONDITION}
401
\integer{cnt_juste=0}
413
\integer{cnt_juste=0}
402
\real{v = 10}
414
\real{v = 10}
-
 
415
 
403
\statement{\nopaste
416
\statement{\nopaste
404
\style\instruction
417
  \style
405
\if{\reading notsametext }{\special{help reading,[à lire]}}
418
  <div class="instructions">\instruction</div>
-
 
419
 
406
\if{\image notsametext }{\special{help image,[à regarder]}}
420
  \for{h=1 to \etape[\step]}{
-
 
421
 
407
\audio\video
422
   \if{\question[\h;] notsametext }{
408
 \for{h=1 to \etape[\step]}{
423
     \if{\h <= \etape[\step] - \N}
-
 
424
       {<div class="panel">}
-
 
425
       {<div class="panel callout">}
-
 
426
    }
-
 
427
 
409
   \if{(\h <= \etape[\step] - \N or r \h isitemof \nstep) and \question[\h;] notsametext }{
428
   \if{(\h <= \etape[\step] - \N or r \h isitemof \nstep) and \question[\h;] notsametext }{
410
     <div class="enonce">
429
     <div class="enonce">
411
     \if{\cnt_step > 1  and \MAX > 1}{\h : } \PRELIMINAIRE[\h;]
430
       \if{\cnt_step > 1 and \MAX > 1}{<span class="q_num">\h :</span>}
-
 
431
       <span class="preliminaire">\PRELIMINAIRE[\h;]</span>
-
 
432
       <span class="question">\question[\h;]</span>
412
     \question[\h;]</div>
433
     </div>
413
   }
434
   }
-
 
435
 
414
   \if{\h <= \etape[\step] - \N and \question[\h;] notsametext}{
436
   \if{\h <= \etape[\step] - \N and \question[\h;] notsametext}{
415
    <div class="reponse">
437
    <div class="reponse">
416
      \qcm_prompt1
438
      <span class="qcm_prompt1">\qcm_prompt1</span>
417
       \for{ a in \REP[\h;]}{
439
       \for{ a in \REP[\h;]}{
418
         \if{ \a  isitemof \CHOIX[\h;\rep[\h;]]}{
440
         \if{ \a isitemof \CHOIX[\h;\rep[\h;]]}{
419
           \if{\TEST[\h;2]>0 and \TEST[\h;3]=0}{
441
           \if{\TEST[\h;2]>0 and \TEST[\h;3]=0}{
420
           <span class="highlight incomplete">\a</span>}
442
           <span class="oef_indpartial">\a</span>}
421
           {<span class="highlight true">\a</span>}
443
           {<span class="oef_indgood">\a</span>}
422
           }
444
           }
423
         {
445
         {
424
         <span class="highlight_false">\a</span>} - }
446
         <span class="oef_indbad strike">\a</span>} - }
425
         \if{\TEST[\h;2]>0 and \TEST[\h;3]=0}{
447
         \if{\TEST[\h;2]>0 and \TEST[\h;3]=0}
426
                   <span class="incomplete">\incomplete_answer_text
448
           {<span class="oef_indpartial">\incomplete_answer_text</span>}
427
          </span>}
449
         \if{\TEST[\h;3]>0}
428
         \if{\TEST[\h;3]>0}{<span style="color:red">\bad_answer_text</span>}
450
           {<span class="oef_indbad">\bad_answer_text</span>}
-
 
451
         \if{\TEST[\h;3]=0 and \TEST[\h;2]=0}
429
         \if{\TEST[\h;3]=0 and \TEST[\h;2]=0}{<span class="true">\good_answer_text</span>}
452
           {<span class="oef_indgood">\good_answer_text</span>}
430
         \if{\answer_given issametext oui}{
453
         \if{\answer_given issametext }{
431
          <br/> \qcm_prompt2
454
           <p class="qcm_prompt2"> \qcm_prompt2</p>
432
          <ul class="highlight true">
455
           <ul class="oef_indgood">
433
             \for{s=1 to \CNT_choix[\h]}{
456
             \for{s=1 to \CNT_choix[\h]}{
434
               \if{\s isitemof \rep[\h;]}{ <li>\CHOIX[\h;\s]</li>}
457
               \if{\s isitemof \rep[\h;]}{ <li>\CHOIX[\h;\s]</li>}
435
            }
458
             }
436
          </ul>
459
           </ul>
437
         }
460
         }
438
      \if{\explication[\h;] notsametext }{<div class="feedback">\explication[\h;]</div>}
461
         \if{\explication[\h;] notsametext }{<div class="feedback">\explication[\h;]</div>}
439
     </div>
462
     </div>
440
   }
463
   }
441
   { \if{ r \h isitemof \nstep}{
464
   { \if{ r \h isitemof \nstep}{
442
      <div class="question">
465
      <div class="question">
443
        <ol>
466
        <ol>
444
          \for{s=1 to \CNT_choix[\h]}{ <li>\embed{reply \h , \s}</li> }
467
          \for{s=1 to \CNT_choix[\h]}{ <li>\embed{reply \h , \s}</li> }
445
        </ol>
468
        </ol>
446
      </div>
469
      </div>
447
      }
470
      }
448
   }
471
   }
-
 
472
 
449
     </ol>
473
   \if{\question[\h;] notsametext }{</div>}
450
  }
474
  }
451
 }
475
 }
452
\answer{}{\REP1;\CHOIX[1;]}{type=\format}{option=\option}
476
\answer{}{\REP1;\CHOIX[1;]}{type=\format}{option=\option}
453
\answer{}{\REP2;\CHOIX[2;]}{type=\format}{option=\option}
477
\answer{}{\REP2;\CHOIX[2;]}{type=\format}{option=\option}
454
\answer{}{\REP3;\CHOIX[3;]}{type=\format}{option=\option}
478
\answer{}{\REP3;\CHOIX[3;]}{type=\format}{option=\option}
Line 469... Line 493...
469
\REP7
493
\REP7
470
\REP8
494
\REP8
471
\REP9
495
\REP9
472
\REP10}
496
\REP10}
473
\if{\format=radio}{
497
\if{\format=radio}{
474
 \text{REP=wims(replace internal , by  &#44; in \REP)}
498
 \text{REP=wims(replace internal , by &#44; in \REP)}
475
}
499
}
476
\matrix{explication2 = \explication2}
500
\matrix{explication2 = \explication2}
477
 
501
 
478
\for{u = 1 to \N}{
502
\for{u = 1 to \N}{
479
   \text{H = \CNT[\step-1;\u]}
503
   \text{H = \CNT[\step-1;\u]}
Line 487... Line 511...
487
   \matrix{TEST=\TEST
511
   \matrix{TEST=\TEST
488
   \test_cnt}
512
   \test_cnt}
489
}
513
}
490
 
514
 
491
test1 = 0 rep < juste
515
test1 = 0 rep < juste
492
test2  nombre de réponses dites justes et en fait fausses
516
test2 nombre de réponses dites justes et en fait fausses
493
test3  nombre de réponses dites fausses et en fait justes
517
test3 nombre de réponses dites fausses et en fait justes
494
 
518
 
495
totalement justes : test1=0, test2=0 test3=0
519
totalement justes : test1=0, test2=0 test3=0
496
partiellement justes :
520
partiellement justes :
497
 
521
 
498
\real{v=\cnt_juste/\CNT[\step-1;\N]}
522
\real{v=\cnt_juste/\CNT[\step-1;\N]}