File: parameters.phtml

package info (click to toggle)
wims 2%3A4.29a%2Bdfsg1-3
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 185,704 kB
  • sloc: xml: 366,687; javascript: 120,570; ansic: 62,341; java: 62,170; sh: 7,744; perl: 3,937; yacc: 3,217; cpp: 1,915; lex: 1,805; makefile: 1,084; lisp: 914; pascal: 601; python: 520; php: 318; asm: 7
file content (136 lines) | stat: -rw-r--r-- 6,272 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
<h3>Parmetros aleatorios en un ejercicio interactivo</h3>

El uso de parmetros aleatorios hace sus ejercicios mucho ms interesantes,
porque sern ejercicios diferentes en cada ocasin que se ejecuten.
<p>
Por ejemplo, la siguiente lnea define un parmetro con el nombre
<span class="tt wims_code_variable">\x1</span>, cuyos valores sern enteros aleatorios
entre -10 y 10 (incluidos):
</p><pre>
\integer{x1=random(-10..10)}
</pre>
Este parmetro aleatorio puede en adelante invocarse con el trmino
<span class="tt wims_code_variable">\x1</span>, en el enunciado, la pregunta, la pista y la solucin del ejercicio.
Esto es, cada aparicin del trmino <span class="tt wims_code_variable">\x1</span> en estos textos ser sustituida 
por el valor aleatorio del parmetro. Esta sustitucin tambin se producir en las 
definiciones de los otros parmetros que sigan a la definicin de x1.
<p>
Supongamos ahora que ha introducido
</p>
<pre>
\integer{x1=random(-10..10)}
\integer{y1=\x1+3}
</pre>
en el campo de la definicin de los parmetros, y la pregunta
<pre>
Calcule la multiplicacin de \x1 por \y1.
</pre>
en el enunciado del ejercicio. Supongamos que en una determinada ocasin
de utilizacin de este ejercicio se asigne un valor aleatorio de 
<span class="tt wims_code_variable">-7</span> a \x1. Entonces el siguiente parmetro \y1 tomar el 
valor -4, y el enunciado del ejercicio se presentar de la forma <div class="wimscenter">Calcule la multiplicacin de -7 por -4.
</div>
Adems, puede  definir una respuesta numrica con el nombre de
<span class="tt">El producto</span>, que tenga como solucin correcta <span class="tt">(\x1)*(\y1)</span>
(tenga en cuenta que aqu los parntesis son necesarios, porque la sustitucin
se hace literalmente).
<a id="list"></a>
!if oefparm isitemof $special_parm
 !changeto help/oefparm.phtml
!endif
$table_header
<caption>Algunos otros ejemplos de parmetros
!href cmd=help&special_parm=$special_parm,oefparm#list [complete list]
</caption>
$table_hdtr<th>Definicin</th><th>Efecto</th></tr>
$table_tr<td class="tt wims_code_words">\real{x=random(-5..5)}
    </td><td>\x ser un nmero aleatorio real <br>entre -5 y 5
</td></tr>
$table_tr<td class="tt wims_code_words">\real{a=randitem(-5,-3,0.3,4)}
    </td><td>\a ser un nmero real tomado aleatoriamente<br> entre -5,-3,0.3 y 4
</td></tr>
$table_tr<td class="tt wims_code_words">\complex{z=(1+2*i)^3}
    </td><td>\z ser el nmero complejo (1+2*i)^3
</td></tr>
$table_tr<td class="tt wims_code_words">\text{sign=randitem(+,-)}
    </td><td>\sign ser un signo aleatorio: + o -
</td></tr>
$table_tr<td class="tt wims_code_words">\integer{n=3*exp(\a)}
    </td><td>\n ser el entero ms cercano a  3*e<sup>\a</sup> <br>
     (depende del valor de \a)
</td></tr>
$table_tr<td class="wims_code_words">\function{f=randitem(x^2+1,sin(x),log(x))}
    </td><td>\f ser la funcin aleatoria: x^2+1,<br> sin(x) o
    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>Evaluacin de la funcin x^2+sin(y),<br/>
    para 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 ser la raz sencilla de x^3-3x+1 entre 0 y 1
</td></tr>
$table_tr<td class="tt wims_code_words">\function{h=simplify(x^5*y^3*x^2/y)}
    </td><td>Expresin simplificada: 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 ser la derivada de sin(x)+cos(y) respecto a x
</td></tr>
$table_tr<td class="tt wims_code_words">\function{F=int(x^2+3*x+1,x)}
    </td><td>\F ser la integral de x^2+3*x+1,<br>
     no hay garantas de que el trmino constante sea siempre el mismo
!!$table_tr<td><tt class="wims_code_words">\function{F=int(t^2+3*t+1,t=1..x)}
!!    </td><td>\F ser la integral de x^2+3*x+1 con 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 ser la integral numrica de x^2+3*x+1 entre 0 y 1
</td></tr>
$table_tr<td  class="tt wims_code_words">\text{f=htmlmath(2*x^2+3*x)}
    </td><td>\f se representar en html como: 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 ser el cdigo fuente en TeX de la expresin.
</td></tr>
$table_tr<td class="tt wims_code_words">\integer{n=items(a,b,c,d,e,f)}
    </td><td>\n ser el nmero de elementos (aqu es de 6) de la lista
     {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 ser el elemento nmero 3 de la lista
     {a,b,c,d,e,f} (luego c).
</td></tr>
$table_tr<td class="tt wims_code_words">\text{s=shuffle(6)}
    </td><td>\s ser una lista de 6 enteros 1,2,...,6, en orden aleatorio.
</td></tr>
$table_tr<td class="tt wims_code_words">\text{s=shuffle(a,b,c,d,e)}
    </td><td>\s ser las letras {a,b,c,d,e} en orden aleatorio.
</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 ser la matriz de 3 lneas y 3 columnas.
</td></tr>
$table_tr<td class="tt wims_code_words">\text{t=asis(Comment a va ? matrix(1,2,3))}
    </td><td>\t est la chane comme elle est crite, <br>sans transformation ni conditionalit.</td>
</tr>
$table_end

Parmetros condicionales: puede escribir
<pre>
\text{ttt=_condition?_def1}</tt>
\text{ttt=_condition?_def1:_def2}
</pre>
<p>
En este caso, <span class="tt">ttt</span> tendr el valor <span class="tt">_def1</span> si
<span class="tt">_condition</span> es verdadera, o <span class="tt">_def2</span> en caso contrario 
(en la sintaxis del segundo ejemplo).

!href target=wims_mhelp cmd=help&special_parm=if Lista de condiciones
</p><p>
Es importante la posicin relativa de una definicin con respecto al
enunciado: si se define una variable DESPUS del enunciado, la evaluacin
de la variable tendr lugar nicamente DESPUS de que el usuario haya respondido 
a la pregunta. En este caso la definicin puede utilizar las respuestas
dadas por el usuario, por medio de <span class="tt wims_code_variable">\reply1</span>, 
<span class="tt wims_code_variable">\reply2</span>, etc.
Y la variable as definida puede utilizarse en la solucin, las condiciones
de comprobacin o los comentarios.
</p>