Rev 11375 | Rev 13704 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
type=gapfill
textarea="data"
:Mixed questions embedded in a random text.
Cet exercice présente des textes où des champs de réponse sont insérés.
<p>
Pour construire un exercice avec ce modèle, il suffit d'entrer les textes.
Une syntaxe facile permet d'incorporer les champs de choix multiples et les
réponses libres dans les textes.
</p>
<p>
Author of the model: Gang Xiao <qualite@wimsedu.info>
</p>
:%%%%%%%%%%%%%%%%% ATTENTION %%%%%%%%%%%%%%%%%%%%
Remove the above header if you destroy the model tags! (The lines starting
with a ':'.) Otherwise the exercise might not be taken back by Createxo.
:%%%%%%%% Sample parameters to be redefined %%%%%%%%%%%%%%%%%
:\title{Generalised closed test}
:\author{XIAO, Gang}
:\email{qualite@wimsedu.info}
:\credits{}
:Données principales.
Définir une question par ligne, et séparer les lignes
par un point-virgule. (Donc les textes eux-mêmes ne peuvent pas contenir
des point-virgules.) <p>
Les questions à poser doivent être mises entre une paire de
double-points d'interrogation "??".
</p><p>
La question est un choix multiple s'il contient plusieurs objets séparés
par des virgules, la bonne réponse étant en premier. Si la question (entre ??) ne
contient qu'un objet, c'est alors une réponse libre, numérique s'il s'agit d'un
nombre ou textuel sinon.
</p><p>
On peut poser jusqu'à 20 questions dans une même phrase.
Si plusieurs réponses correctes sont possibles dans une réponse libre, séparer
toutes les bonnes réponses (synonymes) par un trait vertical <span class="tt wims_code_words">|</span>.
(l'analyse est alors faite par symtext pour les experts).
</p><p>
$embraced_randitem
</p>
\text{data=
Le début officiel de la Seconde Guerre Mondiale est marqué par
??la déclaration de guerre,l'offensive?? de
??la Grande Bretagne et la France,la France,la Grande Bretagne,
l'Allemagne,l'Union Soviétique??
contre ??l'Allemagne,La Pologne,l'Union Soviétique,la France??.;
La Seconde Guerre Mondiale s'est déroulée entre ??1939?? et
??1945??.;
??La Grande Bretagne et la France ont,La France a,La Grande Bretagne a,
Les Etats-Unis ont,L'Union Soviétique a?? déclaré la guerre
contre l'Allemagne en ??1939?? à la suite de l'invasion de
??la Pologne?? par cette dernière.;
Pendant la Seconde Guerre Mondiale, l'Espagne sous
??Francisco Franco|[F.|Francisco|] Franco?? est un pays
??neutre,axe,allié,envahi??.;
??Après avoir battu,Avant d'attaquer?? la France,
{l'Allemagne,Hitler,l'Allemagne Nazie}
a lancé une attaque surprise contre l'URSS en
??décembre,{novembre,octobre},{septembre,août,juillet},{juin,mai,avril},{mars,février,janvier}??
??1940??, sous le nom {du plan,de l'opération} ??Barbarossa??.
}
:Texte affiché avant la question. Balises html admises. Peut être vide.
$embraced_randitem
\text{pre=Fill the cases:}
:Texte affiché après la question. Balises html admises. Peut être vide.
$embraced_randitem
\text{post=}
:Embraced random items
$embraced_randitem
\text{accolade=item(1,1 yes,
2 no)}
:%%%%%%%%%%%%%% Nothing to modify until statement %%%%%%%%%%%%%%%%
\text{accolade=wims(word 1 of \accolade)}
\precision{10000}
\text{data=wims(singlespace \data)}
\text{data=wims(nonempty rows \data)}
\text{data=randomrow(\data)}
\text{data=\accolade=1 ? wims(embraced randitem \data)}
\text{data=slib(text/cutchoice2 \data)}
\integer{qs=min(20,floor(rows(\data)/2))}
\text{types=}
\text{options=}
\text{lengths=}
\text{good=}
\text{field=}
\for{i=1 to \qs}{
\text{f=\data[2*\i;]}
\integer{test=items(\f)}
\if{\test>1}{
\text{g=\f[1]}
\text{f=wims(sort items \f)}
\text{g=positionof(\g,\f)}
\text{good=\good\g;,}
\text{field=\field\f;}
\text{types=\types[]menu,}
\text{lengths=\lengths,}
}{
\text{good=\good\f,}
\integer{c=wims(charcnt \f)}
\text{field=\field;}
\real{test=\f}
\if{\test issametext NaN}{
\text{test=wims(translate internal | to , in \f)}
\integer{c=wims(charcnt \test[1])}
\integer{c=min(50,max(6,\c+6))}
\text{lengths=\lengths\c,}
\text{types=\types[]atext,}
\text{options=| isin \f?\options[]symtext}
}{
\integer{c=max(5,\c+2)}
\text{lengths=\lengths\c,}
\text{f1=wims(nospace \f)}
\text{test=wims(text select -0123456789 in \f)}
\text{types=\test issametext \f1 and abs(\f)<4000?\types[]numexp,:\types[]number,}
}
}
\text{options=\options,}
}
\text{pre=\accolade=1 ?wims(embraced randitem \pre)}
\text{post=\accolade=1 ?wims(embraced randitem \post)}
\text{qlist=wims(makelist reply x for x=1 to \qs)}
\steps{\qlist}
:%%%%%%%%%%%%% Now the statement in HTML. %%%%%%%%%%%%%%%%%%%%
::You don't need to modify this in general.
\statement{<div class="instruction">
\pre
</div>
\data[1;]
\for{k=1 to \qs}{
\embed{r \k,\lengths[\k]} \data[2*\k+1;]
}
\post
}
:%%%%%%%%%%%%% Nothing to modify after. %%%%%%%%%%%%%%%%%5
\answer{Champ 1}{\good[1]\field[1;]}{type=\types[1]}{option=\options[1]}
\answer{Champ 2}{\good[2]\field[2;]}{type=\types[2]}{option=\options[2]}
\answer{Champ 3}{\good[3]\field[3;]}{type=\types[3]}{option=\options[3]}
\answer{Champ 4}{\good[4]\field[4;]}{type=\types[4]}{option=\options[4]}
\answer{Champ 5}{\good[5]\field[5;]}{type=\types[5]}{option=\options[5]}
\answer{Champ 6}{\good[6]\field[6;]}{type=\types[6]}{option=\options[6]}
\answer{Champ 7}{\good[7]\field[7;]}{type=\types[7]}{option=\options[7]}
\answer{Champ 8}{\good[8]\field[8;]}{type=\types[8]}{option=\options[8]}
\answer{Champ 9}{\good[9]\field[9;]}{type=\types[9]}{option=\options[9]}
\answer{Champ 10}{\good[10]\field[10;]}{type=\types[10]}{option=\options[10]}
\answer{Champ 11}{\good[11]\field[11;]}{type=\types[11]}{option=\options[11]}
\answer{Champ 12}{\good[12]\field[12;]}{type=\types[12]}{option=\options[12]}
\answer{Champ 13}{\good[13]\field[13;]}{type=\types[13]}{option=\options[13]}
\answer{Champ 14}{\good[14]\field[14;]}{type=\types[14]}{option=\options[14]}
\answer{Champ 15}{\good[15]\field[15;]}{type=\types[15]}{option=\options[15]}
\answer{Champ 16}{\good[16]\field[16;]}{type=\types[16]}{option=\options[16]}
\answer{Champ 17}{\good[17]\field[17;]}{type=\types[17]}{option=\options[17]}
\answer{Champ 18}{\good[18]\field[18;]}{type=\types[18]}{option=\options[18]}
\answer{Champ 19}{\good[19]\field[19;]}{type=\types[19]}{option=\options[19]}
\answer{Champ 20}{\good[20]\field[20;]}{type=\types[20]}{option=\options[20]}