Diferencia entre revisiones de «Comando Zip»
De GeoGebra Manual
Línea 9: | Línea 9: | ||
}} | }} | ||
:{{Note|1=Este comando, en definitiva, es similar a una construcción que en otros lenguajes de programación se conoce como ''"mapa"'' (''for each...'' o ''map'').}} | :{{Note|1=Este comando, en definitiva, es similar a una construcción que en otros lenguajes de programación se conoce como ''"mapa"'' (''for each...'' o ''map'').}} | ||
+ | |||
==[[Image:View-cas24.png]][[Comandos Exclusivos CAS (Cálculo Avanzado)|En]] [[Vista CAS|Vista CAS '''C'''<sub><small>omputación</small></sub>'''A'''<sub><small>lgebraica</small></sub>'''S'''<sub><small>imbólica</small></sub>]]== | ==[[Image:View-cas24.png]][[Comandos Exclusivos CAS (Cálculo Avanzado)|En]] [[Vista CAS|Vista CAS '''C'''<sub><small>omputación</small></sub>'''A'''<sub><small>lgebraica</small></sub>'''S'''<sub><small>imbólica</small></sub>]]== | ||
− | Se admite cada una de las variantes previas así como literales en operaciones simbólicas. | + | Se admite cada una de las variantes previas así como literales en operaciones simbólicas.<!-- |
− | :{{Examples|1=Con decimales según el [[Menú de Opciones#Redondeo|''redondeo'']] fijado... <br>'''<code>Zip[(k^(m + ñ + 1) - k^m) / (k - 1),k,{ℯ},m,{1, 2, 3, 4},ñ,{6, 7, 8, 9}]</code>''' da como [[Herramienta de Valor Numérico|da]]<small>[[Archivo:Mode numeric.png]]</small> ''{1733.27}'' aproximadamente y se [[Herramienta de Evalúa|evalúa]] como <small><small>[[Archivo:Mode evaluate.png]]</small></small>'''{'''<math>\frac{43331653397}{25000000} </math>'''}'''<br>'''<code>Zip[(k^(m+ñ+1)-k^m)/(k-1),k,{ℯ},m,Secuencia[1000],ñ, Secuencia[1000]+5]</code>''' da el mismo resultado}}<hr> | + | :{{Examples|1=Con decimales según el [[Menú de Opciones#Redondeo|''redondeo'']] fijado... <br>'''<code>Zip[(k^(m + ñ + 1) - k^m) / (k - 1),k,{ℯ},m,{1, 2, 3, 4},ñ,{6, 7, 8, 9}]</code>''' da como [[Herramienta de Valor Numérico|da]]<small>[[Archivo:Mode numeric.png]]</small> ''{1733.27}'' aproximadamente y se [[Herramienta de Evalúa|evalúa]] como <small><small>[[Archivo:Mode evaluate.png]]</small></small>'''{'''<math>\frac{43331653397}{25000000} </math>'''}'''<br>'''<code>Zip[(k^(m+ñ+1)-k^m)/(k-1),k,{ℯ},m,Secuencia[1000],ñ, Secuencia[1000]+5]</code>''' da el mismo resultado}}<hr>--> |
− | :{{Note|1=Ver también los comandos [[Comando Secuencia|Secuencia]] e [[Comando ÍndiceDe|ÍndiceDe]].}}<!-- | + | :{{Note|1=Ver también los comandos [[Comando Secuencia|Secuencia]] e [[Comando ÍndiceDe|ÍndiceDe]].}}<!-- |
− | <br><br>'''<code><nowiki>Zip[Suma[k^h, h, m, m+ñ], m, {1, 2, 3, 4, 5}, ñ, {3, 4, 5, 6, 7}]</nowiki></code>''' se [[Herramienta de Evalúa|evalúa]] como [[Archivo:Mode evaluate.png]] <<math>{Zip[\frac{k^{m + ñ + 1} - k^{m} }{k - 1},m, \{ 1, 2, 3, 4, 5 \} ,ñ, \{ 3, 4, 5, 6, 7 \} ] } </math>}} | + | <br><br>'''<code><nowiki>Zip[Suma[k^h, h, m, m+ñ], m, {1, 2, 3, 4, 5}, ñ, {3, 4, 5, 6, 7}]</nowiki></code>''' se [[Herramienta de Evalúa|evalúa]] como [[Archivo:Mode evaluate.png]] <<math>{Zip[\frac{k^{m + ñ + 1} - k^{m} }{k - 1},m, \{ 1, 2, 3, 4, 5 \} ,ñ, \{ 3, 4, 5, 6, 7 \} ] } </math>}}--> |
Revisión del 07:00 20 nov 2014
- Zip[ <Expresión>, <Variable1>, <Lista1>, <Variable2>, <Lista2>, ...]
- Crea la lista de objetos obtenida al sustituir, en la expresión, las variables por elementos de las correspondientes listas. Su longitud coincide con la de las de entrada.
- Ejemplos:
Dados los puntos Q, R, S, T y U...Aplana[Zip[EliminaIndefinidos[ Añade[{}, Si[sqrt(x(P_x)² + y(P_x)²) < 2, P_x]]], P_x, {Q, R, S, T, U}]]
, da por resultado la lista conteniendo solo los puntos del conjunto indicado que están dentro del círculo con centro en el origen de coordenadas y radio de dos unidadesZip[PuntoMedio[P_A, P_B], P_A, {Q, R}, P_B, {S, T}]
, da por resultado la lista conteniendo los puntos medios entre Q y S (primero con primero) y entre R y T (segundo con segundo)...lista_1 = {(0,4 , 4), (2, 3.4)}
Siendolis1 = {x^2, x^3, x^6}
una lista de polinomiosZip[Grado[a], a, lis1]
da por resultado, la lista{2, 3, 6}
.
Alerta: Los elementos de cada lista deben ser del mismo tipo.
- Nota: Se puede operar incluso con una única lista (que es, por otra parte, el empleo más frecuente) en una alternativa más sintética que Secuencia cuando lo único que se requiere es recorrer una lista.
- Ejemplos:
Zip[a^2, a, listaDeNúmeros]
es mucho más breve queSecuencia[Elemento[listaDeNúmeros, a]^2, a, 1, Longitud[listaDeNúmeros]]
(aunque en este caso es aún más sencillo simplementelistaDeNúmeros^2
.)
- Nota: Este comando, en definitiva, es similar a una construcción que en otros lenguajes de programación se conoce como "mapa" (for each... o map).
En Vista CAS ComputaciónAlgebraicaSimbólica
Se admite cada una de las variantes previas así como literales en operaciones simbólicas.
Comentarios
Es suficiente usar una sola lista con Zip(). Es una alternativa más corta que el comando Secuencia() cuando se desea recorrer una lista. Por ejemplo, Zip(a^2, a, listaDeNúmeros)
es más corto que Secuencia(Elemento(listaDeNúmeros, a)^2, a, 1, Longitud(listaDeNúmeros))
(más allá de que, en este caso particular, es aún más facil ingresar listaDeNúmeros^2
).
Aviso: Zip() es un constructo similar a lo que se suele denominar "map" en otros lenguajes de programación.