Subversion Repositories wimsdev

Rev

Rev 13477 | Rev 13714 | 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>
To build an exercise with this model, just enter the texts.
Une syntaxe facile permet d'incorporer les champs de choix multiples et les
réponses libres dans les textes.
</p>
<p class="wims_credits">
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{}

:Main data.
Define one question per line, and separate the lines with a semicolon. (Donc les textes eux-mêmes ne peuvent pas contenir
des point-virgules.) <p>
Questions to ask should be put between a pair of
double-question marks "??".
</p><p>
The question is a multiple choice if it contains multiple objects separated by commas, the correct answer being first. If the question (between ??) contains only one object, then it is a free answer, numeric if it is a number or textual otherwise.
</p><p>
You can ask up to 20 questions in one sentence.
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??.
}

:Text displayed before the question. HTML tags allowed. Can be empty.
$embraced_randitem
\text{pre=Fill the cases:}

:Text displayed after the question. HTML tags allowed. Can be empty.
$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{Field 1}{\good[1]\field[1;]}{type=\types[1]}{option=\options[1]}
\answer{Field 2}{\good[2]\field[2;]}{type=\types[2]}{option=\options[2]}
\answer{Field 3}{\good[3]\field[3;]}{type=\types[3]}{option=\options[3]}
\answer{Field 4}{\good[4]\field[4;]}{type=\types[4]}{option=\options[4]}
\answer{Field 5}{\good[5]\field[5;]}{type=\types[5]}{option=\options[5]}
\answer{Field 6}{\good[6]\field[6;]}{type=\types[6]}{option=\options[6]}
\answer{Field 7}{\good[7]\field[7;]}{type=\types[7]}{option=\options[7]}
\answer{Field 8}{\good[8]\field[8;]}{type=\types[8]}{option=\options[8]}
\answer{Field 9}{\good[9]\field[9;]}{type=\types[9]}{option=\options[9]}
\answer{Field 10}{\good[10]\field[10;]}{type=\types[10]}{option=\options[10]}
\answer{Field 11}{\good[11]\field[11;]}{type=\types[11]}{option=\options[11]}
\answer{Field 12}{\good[12]\field[12;]}{type=\types[12]}{option=\options[12]}
\answer{Field 13}{\good[13]\field[13;]}{type=\types[13]}{option=\options[13]}
\answer{Field 14}{\good[14]\field[14;]}{type=\types[14]}{option=\options[14]}
\answer{Field 15}{\good[15]\field[15;]}{type=\types[15]}{option=\options[15]}
\answer{Field 16}{\good[16]\field[16;]}{type=\types[16]}{option=\options[16]}
\answer{Field 17}{\good[17]\field[17;]}{type=\types[17]}{option=\options[17]}
\answer{Field 18}{\good[18]\field[18;]}{type=\types[18]}{option=\options[18]}
\answer{Field 19}{\good[19]\field[19;]}{type=\types[19]}{option=\options[19]}
\answer{Field 20}{\good[20]\field[20;]}{type=\types[20]}{option=\options[20]}