<h3>Random parameters in een interactieve Createxo oefening</h3>
<p>
Het gebruik van random parameters maakt Uw oefeningen veel aantrekkelijker,
niet alleen omdat de vraag er elke keer anders wordt, maar er zelfs totaal anders kan uitzien.
</p><p>
Bijvoorbeeld, de onderstaande regel definieerd een parameter onder de naam
<span class="tt wims_code_variable">x1</span>, met als mogelijke waarde een integer tussen -10 en 10 (inclusief):
</p><pre>
\integer{x1=random(-10..10)}
</pre>
Deze random parameter kan nu worden aangeroepen met het woord
<b><span class="tt wims_code_variable">\x1</span></b>, in het statement,de antwoorden, de hint en de goede oplossing.
Dus elk woord <span class="tt wims_code_variable">\x1</span> in deze text zal worden vervangen
door de toegekende random waarde van deze parameter.
Uiteraard is deze substitutie globaal voor uw oefening, en ook worden
uitgevoerd wanneer deze random parameter in andere definities/variabelen/functies wordt
gebruikt.
<p>
Stel nu dat U heeft ingevoerd
</p>
<pre>
\integer{x1=random(-10..10)}
\integer{y1=\x1+3}
</pre>
in het "definitie-veld" van de parameters, en de vraag  
<pre>
bereken de uitkomst van de vermenigvuldiging van \x1 met \y1.
</pre>
in het "statement-veld" van de oefening

Stel dat de random waarde <span class="tt wims_code_variable">-7</span> 
wordt toegekend aan \x1. 
Dan wordt dus de parameter \y1 gelijk aan -4, 
en het "statement" van deze oefening wordt dan gepresenteerd als
 <div class="wimscenter">bereken de uitkomst van de vermenigvuldiging van -7 met -4.
</div>
U kunt hierna dus een getalsmatige antwoord definieren onder de naam
van  <span class="tt">het produkt</span>,
met als goede oplossing <span class="tt wims_code_words">(\x1)*(\y1)</span>. 
(let op:de haakjes zijn wel noodzakelijk, om dat de substitutitie hier letterlijk is)
<a id="list"></a>
!if oefparm isitemof $special_parm
 !changeto help/oefparm.phtml
!endif
$table_header
<caption>Enkele ander voorbeelden van parameters
!href cmd=help&special_parm=$special_parm,oefparm#list [complete lijst]
</caption>
$table_hdtr<th>Definitie</th><th>Effect</th></tr>
$table_tr<td class="tt wims_code_words">\real{x=random(-5..5)}
    </td><td>\x wordt  een random re&euml;el getal<br>tussen -5 en 5
</td></tr>
$table_tr<td class="tt wims_code_words">\real{a=randitem(-5,-3,0.3,4)}
    </td><td>\a wordt een re&euml;el getal willekeurig gekozen uit <br> -5,-3,0.3 en 4
</td></tr>
$table_tr<td class="tt wims_code_words">\complex{z=(1+2*i)^3}
    </td><td>\z wordt het complexe getal (1+2*i)^3
</td></tr>
$table_tr<td class="tt wims_code_words">\text{sign=randitem(+,-)}
    </td><td>\sign wordt nu random : + of -
</td></tr>
$table_tr<td class="tt wims_code_words">\integer{n=3*exp(\a)}
    </td><td>\n wordt nu de dichtst bij zijnde integer van 3*e<sup>\a</sup> <br>(hang dus af van de waarde van \a)
</td></tr>
$table_tr<td class="wims_code_words">\function{f=randitem<br> (x^2+1,sin(x),log(x))}
    </td><td>\f wordt een random gekozen functie: of x^2+1,<br>of sin(x), of
    log(x)
</td></tr>
$table_tr<td class="tt wims_code_words">\real{a=evalue(x^2+sin(y),x=3,y=4)}
    </td><td>Evaluatie van de functie x^2+sin(y),<br>
    voor x=3, y=4
</td></tr>
$table_tr<td class="tt wims_code_words">\real{r=solve(x^3-3*x+1,x=0..1)}
    </td><td>\r wordt de wortel van x^3-3x+1  tussen 0 en 1
</td></tr>
$table_tr<td class="tt wims_code_words">\function{h=simplify(x^5*y^3*x^2/y)}
    </td><td>Vereenvoudigde vergelijking: x<sup>7</sup>y<sup>2</sup>
</td></tr>
$table_tr<td class="tt wims_code_words">\function{g=diff(sin(x)+cos(y),x)}
    </td><td>\g wordt de afgeleide van sin(x)+cos(y) naar x
</td></tr>
$table_tr<td class="tt wims_code_words">\function{F=int(x^2+3*x+1,x)}
    </td><td>\F wordt de integraal van x^2+3*x+1,<br>
    de contante term in niet gegarandeerd altijd het zelfde 
!!$table_tr<td class="wims_code_words">\function{F=int(t^2+3*t+1,t=1..x)}
!!    </td><td>\F wordt de integraal van x^2+3*x+1 met g(1)=0
</td></tr>
$table_tr<td class="tt wims_code_words">\real{a=int(t^2+3*t+1,t=0..1)}
    </td><td>\a wordt de numerieke integraal x^2+3*x+1 van 0 tot 1
</td></tr>
$table_tr<td class="tt wims_code_words">\text{f=htmlmath(2*x^2+3*x)}
    </td><td>\f wordt weergegeven als: 2x<sup>2</sup>+3x
</td></tr>
$table_tr<td class="tt wims_code_words">\text{f=texmath(2*x^2+3*x)}
    </td><td>\f wordt TeX-code van de uitdrukking.
</td></tr>
$table_tr<td class="tt wims_code_words">\integer{n=items(a,b,c,d,e,f)}
    </td><td>\n wordt het aantal items (hier is \n=6) in de kommalijst
     {a,b,c,d,e,f}
</td></tr>
$table_tr<td class="tt wims_code_words">\text{i=item(3,a,b,c,d,e,f)}
    </td><td>\i wordt het derde item van de lijst
     {a,b,c,d,e,f} (en in dit geval dus \i=c).
</td></tr>
$table_tr<td class="tt wims_code_words">\text{s=shuffle(6)}
    </td><td>\s wordt een lijst van  6 integers 1,2,...,6, in random volgorde.
</td></tr>
$table_tr<td class="tt wims_code_words">\text{s=shuffle(a,b,c,d,e)}
    </td><td>\s wordt de letters {a,b,c,d,e} in random volgorde.
</td></tr>
$table_tr<td class="wims_code_words">\matrix{m=1,2,3<br>4,5,6<br>7,8,9}
    </td><td>\m wordt een matrix van 3 rijen en 3 kolommen.
</td></tr>
$table_tr<td class="tt wims_code_words">\text{t=asis(Hoe gaat het met je ? item(1,2,3))}
    </td><td>De tekst wordt letterlijk overgenomen.
</td></tr>$table_end

Conditionele parameters: U kunt schrijven <pre>
\text{ttt=_condition?_def1}
\text{ttt=_condition?_def1:_def2}
</pre>
<p>
In het eerste geval wordt de tekst <span class="tt">ttt</span> gelijk aan <span class="tt">_def1</span> als 
de <span class="tt">_condition</span> waar is.<br>
Of zoals in het tweede voorbeeld wordt <span class="tt">ttt</span> gelijk aan <span class="tt">_def2</span> als niet voldaan is aan <span class="tt">_condition</span>.
</p><p>
Zie hier de komplete lijst van&nbsp;
!href target=wims_mhelp cmd=help&special_parm=if condities
</p><p>
De onderlinge plaatsing van de "definitie" en het "statement" is belangrijk:
wordt een variabele gedefineerd <b>NA</b> het statement, de evaluatie van de variabele
vind dan plaats <b>NA</b> de leerling de vraag heeft beantwoord.
In dit geval kan deze definitie inhaken op de antwoorden door de leerling via
<span class="tt wims_code_variable">\reply1</span>, <span class="tt wims_code_variable">\reply2</span>, etc. 
En de zo gedefineerde variabele kan worden gebruikt in oplossingen , testcondities of feedbacks.
</p>
