Diferencia entre revisiones de «Comando Valor»

De GeoGebra Manual
Saltar a: navegación, buscar
Línea 12: Línea 12:
 
:{{Examples|1=<br>Siendo '''''l_v''''' = {}, '''<code>Valor[l_1, 1, Elemento[{"a", "e", "i", "o", "u"}, 1] ]</code>''' ingresa la ''a'' a ''l_v'' que deviene  {"a"}.<br>Luego, '''<code>Valor[l_1, 2, Elemento[{"a", "e", "i", "o", "u"}, 2] ]</code>''' añade la ''e'' y  ''l_v'' pasa a ser  {"a", "e"} ... y así sucesivamente.<br><br>Dada ''l<sub>abcde</sub>'' = (), '''<code>Valor[ l<sub>abcde</sub> , 1, Secuencia[LetraDeCódigo[96 + r], r, 1, 5]]</code>''' lleva a ''l<sub>abcde</sub>'' = ''{'''{"a", "b", "c", "d", "e"}'''}''
 
:{{Examples|1=<br>Siendo '''''l_v''''' = {}, '''<code>Valor[l_1, 1, Elemento[{"a", "e", "i", "o", "u"}, 1] ]</code>''' ingresa la ''a'' a ''l_v'' que deviene  {"a"}.<br>Luego, '''<code>Valor[l_1, 2, Elemento[{"a", "e", "i", "o", "u"}, 2] ]</code>''' añade la ''e'' y  ''l_v'' pasa a ser  {"a", "e"} ... y así sucesivamente.<br><br>Dada ''l<sub>abcde</sub>'' = (), '''<code>Valor[ l<sub>abcde</sub> , 1, Secuencia[LetraDeCódigo[96 + r], r, 1, 5]]</code>''' lleva a ''l<sub>abcde</sub>'' = ''{'''{"a", "b", "c", "d", "e"}'''}''
 
}}
 
}}
===Valor y Objetos Libres===
 
Dada ''li<sub>1</sub> = {A, B, C}'', una lista de puntos [[Objetos Libres, Dependientes y Auxiliares|dependiente]] a la que se quiere incorporar un punto ''D'', no tendrá efecto alguno el comando '''Valor''' dado que sólo opera sobre objetos [[Objetos Libres, Dependientes y Auxiliares|libres]].<br>Un guión que atendiera esta maniobra, debe en primer lugar  sobre SoitValeur list1, debe copiar el último objeto de comando libre CopierObjetLibre
 
    Por lo tanto, la muestra de script:
 
Comando CopiaObjetoLibre
 
        list2 = CopierObjetLibre [list1]
 
        SoitValeur [list2, 4, D].
 
 
===Valor en los Guiones - ''scripting''===
 
===Valor en los Guiones - ''scripting''===
 
Para cambiar el valor de un objeto en [[Programas - Guiones (Scripting)]], debe emplearse este comando en lugar del signo  '''=.'''
 
Para cambiar el valor de un objeto en [[Programas - Guiones (Scripting)]], debe emplearse este comando en lugar del signo  '''=.'''
Línea 29: Línea 23:
 
:{{Note|1=<br>Ver el tutorial [[Tutorial:Animándose a Funciones|Animándose a Valorar Funciones]]<br><br>Ver [http://www.geogebra.org/forum/viewtopic.php?p=84753#p84753 este comentario de un foro] (detallado a continuación) para mayores explicaciones sobre el empleo de este comando en [[Programas - Guiones (Scripting)]]
 
:{{Note|1=<br>Ver el tutorial [[Tutorial:Animándose a Funciones|Animándose a Valorar Funciones]]<br><br>Ver [http://www.geogebra.org/forum/viewtopic.php?p=84753#p84753 este comentario de un foro] (detallado a continuación) para mayores explicaciones sobre el empleo de este comando en [[Programas - Guiones (Scripting)]]
 
}}
 
}}
:{{OJo|1=<br>Para analizar un ejemplo clarificador, puede considerarse dos objetos, '''''á''''' libre y '''''j''''' que también lo sea o que fuera dependiente, para notar que ingresar '''<code>á=4</code>''', :'''<code>á=á + 1</code>''',  '''<code>á=á + j</code>''' es equivalente a :'''<code>Valor[á, 4]</code>''',  '''<code>Valor[á, á + 1]</code>''' y '''<code>Valor[á, á + j]</code>'''  (siendo '''''á''''' aún libre habiéndose modificado exclusivamente su valor).<br>En cambio, '''<code>á = j</code>''' ocasiona una redefinición. Mientras que:<br>'''<code>á = [[Comando CopiaObjetoLibre|CopiaObjetoLibre]][j]</code>''' operaría, nuevamente, como '''Valor'''.<br>La '''''redefinición''''' es un proceso lento, máxime si hay numeroso objetos en juego, dependientes de '''''á''''' en este caso. Esto provocaría serios inconvenientes en guiones que podrían operar ''Al Actualizar'' por lo que, en caso de dudas, es recomendable optar por '''Valor[]'''.<br>
+
:{{OJo|1=<br>Para analizar un ejemplo clarificador, puede considerarse dos objetos, '''''á''''' libre y '''''j''''' que también lo sea o que fuera dependiente, para notar que ingresar '''<code>á=4</code>''', :'''<code>á=á + 1</code>''',  '''<code>á=á + j</code>''' es equivalente a :'''<code>Valor[á, 4]</code>''',  '''<code>Valor[á, á + 1]</code>''' y '''<code>Valor[á, á + j]</code>'''  (siendo '''''á''''' aún libre habiéndose modificado exclusivamente su valor).<br>En cambio, '''<code>á = j</code>''' ocasiona una redefinición. Mientras que:<br>'''<code>á = [[Comando CopiaObjetoLibre|CopiaObjetoLibre]][j]</code>''' operaría, nuevamente, como '''Valor'''.<br>La '''''redefinición''''' es un proceso lento, máxime si hay numeroso objetos en juego, dependientes de '''''á''''' en este caso. Esto provocaría serios inconvenientes en guiones que podrían operar ''Al Actualizar'' por lo que, en caso de dudas, es recomendable optar por '''Valor[]'''.}}
 +
====Valor y Objetos Libres====
 +
Dada ''li<sub>1</sub> = {A, B, C}'', una lista de puntos [[Objetos Libres, Dependientes y Auxiliares|dependiente]] a la que se quiere incorporar uno adciaonal, ''D'', no tendrá efecto alguno el comando '''Valor''' dado que sólo opera sobre objetos [[Objetos Libres, Dependientes y Auxiliares|libres]].
 +
:{{Example|1=<br>Un guión adecuado para  esta maniobra, debe en primer lugar, crear,  con [[Comando CopiaObjetoLibre|CopiaObjetoLibre]], una lista alternativa [[Objetos Libres, Dependientes y Auxiliares|libre]], ''li<sub>2</sub>'' para que su cuarto elemento, con '''Valor''' pase a ser ''D''.  Así:<br>
 +
::li<sub>2</sub>= [[Comando CopiaObjetoLibre|CopiaObjetoLibre[li<sub>1</sub>]]]<br>
 +
::Valor[li<sub>2</sub> , 4, D]
 
}}
 
}}

Revisión del 22:42 10 ene 2013


Valor[ <Objeto>, <Objeto> ]
Establece para el primer objeto, el valor del segundo.
Nota:
Si el primero es un objeto libre, su valor queda establecido por el del segundo.
Ejemplos:

Así, dados ...
s un segmento, un Punto[s] A en (-3, 3) y È uno libre
Valor[È , A ] llevará a È a (-3, 3)
Si el primero fuera un punto restringido a cierto recorrido o región, procurará tomar el valor del segundo dentro del ámbito al que está limitado.

Así, siendo...
A un Punto[s] en (-3, 3) y Ú un Punto[EjeX] en (0, 0),
Valor[Ú , A ]], lleva a Ú a (-3, 0)Lo más acorde a A que le es posible
Alerta Alerta: El valor asignado al primer objeto no cambia frente a las modificaciones posteriores del segundo dado que el vínculo no es dinámico.
Valor[ <Booleano>, <0|1> ]
Fija el estado de una booleana / casilla de control, con un 1 = cierto y con 0 = falso, operando del mismo modo que Valor[ <Booleano>, <false|true> ].
Nota: En lugar de Valor[b, true] puede anotarse Valor[b, 1] dado que 1 reemplaza a la condición verdadera y 0, a la falsa.
Ejemplo: Siendo b una booleana, Valor[b, 1] la establece verdadera.
Valor[ <Lista>, <Número>, <Objeto> ]
Otorga el valor del Objeto señalado al elemento de la Lista que ocupa la posición indicada por el Número.
Alerta Alerta: La Lista debe ser libre y el valor del Número no debe superar al de su longitud + 1 dado que apunta a añadir un enésimo elemento que, como máximo, será el siguiente al último)
Ejemplos:
Siendo l_v = {}, Valor[l_1, 1, Elemento[{"a", "e", "i", "o", "u"}, 1] ] ingresa la a a l_v que deviene {"a"}.
Luego, Valor[l_1, 2, Elemento[{"a", "e", "i", "o", "u"}, 2] ] añade la e y l_v pasa a ser {"a", "e"} ... y así sucesivamente.

Dada labcde = (), Valor[ labcde , 1, Secuencia[LetraDeCódigo[96 + r], r, 1, 5]] lleva a labcde = {{"a", "b", "c", "d", "e"}}

Valor en los Guiones - scripting

Para cambiar el valor de un objeto en Programas - Guiones (Scripting), debe emplearse este comando en lugar del signo =.

Ejemplo:
Siendo f1 una función previamente definida como tal y un punto A al que se le adjudica animación y rastro para obtener efectos diversos(acaso Punto[ElementoAleatorio[{f1} ]]), puede destinarse un botón con el siguiente guión para definir a f1 como a una de las funciones de la lista.
f1(x) = 1
f1 = Valor[f1, ElementoAleatorio[{Función[Pendiente[Segmento[U, V]] x, x(V), x(U)], sin(x), abs(x), cos(x), ln(abs(x))} ]]

Bulbgraph.pngAtención:
Siendo ñ libre y á dependiente o no, son equivalentes...
  • ñ = 4 a Valor[ñ, 4]
  • ñ = ñ + 1 a Valor[ñ, ñ + 1]
  • ñ = ñ + á a Valor[ñ, ñ + á]
... manteniendo ñ su condición de independente, dado que sólo cambia de valor. En cambio.
  • ñ = á desencadena una redefinición mientras...
  • ñ = CopiaObjetoLibre[á] no la provoca dado que opera de modo análogo a Valor en este caso.
Nota:
Ver el tutorial Animándose a Valorar Funciones

Ver este comentario de un foro (detallado a continuación) para mayores explicaciones sobre el empleo de este comando en Programas - Guiones (Scripting)
Bulbgraph.pngAtención:
Para analizar un ejemplo clarificador, puede considerarse dos objetos, á libre y j que también lo sea o que fuera dependiente, para notar que ingresar á=4, :á=á + 1, á=á + j es equivalente a :Valor[á, 4], Valor[á, á + 1] y Valor[á, á + j] (siendo á aún libre habiéndose modificado exclusivamente su valor).
En cambio, á = j ocasiona una redefinición. Mientras que:
á = CopiaObjetoLibre[j] operaría, nuevamente, como Valor.
La redefinición es un proceso lento, máxime si hay numeroso objetos en juego, dependientes de á en este caso. Esto provocaría serios inconvenientes en guiones que podrían operar Al Actualizar por lo que, en caso de dudas, es recomendable optar por Valor[].

Valor y Objetos Libres

Dada li1 = {A, B, C}, una lista de puntos dependiente a la que se quiere incorporar uno adciaonal, D, no tendrá efecto alguno el comando Valor dado que sólo opera sobre objetos libres.

Ejemplo:
Un guión adecuado para esta maniobra, debe en primer lugar, crear, con CopiaObjetoLibre, una lista alternativa libre, li2 para que su cuarto elemento, con Valor pase a ser D. Así:
li2= CopiaObjetoLibre[li1]
Valor[li2 , 4, D]

Comentarios

Valor() en guiones[editar]

Para cambiar el valor de un objeto en un guion, siempre hay que usar Valor en lugar de =.

© 2024 International GeoGebra Institute