Вы находитесь на странице: 1из 8

11/7/2017 Tutorial "Operaciones Secuenciales" para LEGO Mindstorms EV3

TUTORIAL EV3:
OPERACIONES SECUENCIALES

Inicio Ayudas Analgicos Digitales Proyectos Foro Contacta Tienda

QU ES?

El Icono "Operaciones Secuenciales" es el mismo que el icono Array del antiguo NXT y del que ya hicimos un
tutorial. Aquel icono del NXT no vena en el software de origen, y este s. Y trae de serie ms opciones.

Este icono permite crear y/o manipular listas numricas y lgicas. Luego podremos acceder a estas listas o
secuencias y leer cualquiera de esos valores. Pueden ser varios datos forma consecutiva o un dato suelto concreto de
la misma. Este icono manipula listas de nmeros, pero la lista en s misma hay que guardarla en algn sitio. Ese sitio
puede ser una variable o un archivo permanente.

Para guardar una lista en un archivo de texto y tener acceso a ella de forma permanente, tendrs que usar el Bloque
Avanzado "Acceso a Archivo", es decir, el Data Logger que ya conocemos del NXT. Los usos de ambos iconos son
los mismos, as que los puedes repasar.

Usaremos indistintamente los trminos: Lista, Cadena, Serie, Array, Secuencia... todos significan lo mismo. Y el
icono podrs encontrarlo en la pestaa roja, "Operaciones con Datos". Es el tercero:

EJEMPLOS

Uno es el conocido juego Simn. Aqu, el programa propone una secuencia de sonido y color que nosotros tenemos
que reproducirla con el teclado. Se trata de una secuencia que va creciendo poco a poco, ideal para el Array.

http://www.nxtorm.es/ayudas/ay-s1-array_EV3.html 1/8
11/7/2017 Tutorial "Operaciones Secuenciales" para LEGO Mindstorms EV3

Simon con LEGO Mindstorms EV3

Otro uso habitual del Array es el de leer un dato concreto de la lista creada. Por ejemplo, leer la posicin 4 de una
lista con las 7 notas musicales y comprobar si hemos respondido "Fa".

Ejemplos de secuencias:

Ejemplo de lista numrica: 3; 4; 7; 7; 1


Otro ejemplo con decimales: 0,3; 0,5; 1,22; 3,7; 1,1
Ejemplo de lista lgica: si; si; no; si; no

SELECCION DEL MODO DE TRABAJO

Cualquier accin que llevemos a cabo con una "Operacin secuencial" necesita ser aplicarda sobre una secuencia o
lista concreta. En caso contrario, trabajaremos sobre una secuencia o cadena vaca. Una buena opcin para guardar la
lista generada es hacer uso de variables. Lo veremos con ejemplos.

En este bloque tenemos 4 modos de trabajo: Anexar, Leer en el ndice, Escribir en el ndice y Longitud. Cada uno
de ellos pueden ser "numrico" o "lgico". Los vemos uno a uno.

Anexar: aadir un valor al final de la lista o crear una lista nueva.


Leer: ver un valor concreto de la lista.
Escribir: sustituir un valor concreto de la lista por otro.
Longitud: medir la extensin de una lista.

http://www.nxtorm.es/ayudas/ay-s1-array_EV3.html 2/8
11/7/2017 Tutorial "Operaciones Secuenciales" para LEGO Mindstorms EV3

LONGITUD

Aunque es la ltima de las opciones del modo de trabajo seleccionable, es la ms sencilla de entender, as que
empezamos por aqu. Esta opcin mide la longitud de la lista. Por esto es necesario decirle antes qu lista hay que
medir. Para eso, usaremos una variable y crearemos ah la lista. En nuestro ejemplo, usaremos listas de nmeros.

En la pestaa roja, seleccionamos la maleta (Bloque "Variable"). Una vez lo has arrastrado a la pantalla, pichas sobre
el botn de modo, (flecha negra) y seleccionas "Escribir/Secuencia numrica". Ahora le das nombre a la variable en
la casilla de arriba (flecha rosa). Yo he llamado a la variable "Lista".

Vale, seguimos. A continuacin, los siguientes 3 pasos que hay que dar para confeccionar la lista 3,5,4,2. Pinchar
donde indica la flecha rosa para que se abra el desplegable, darle al signo "+" e ir aadiendo tantos datos como
necesite tu secuencia numrica:

http://www.nxtorm.es/ayudas/ay-s1-array_EV3.html 3/8
11/7/2017 Tutorial "Operaciones Secuenciales" para LEGO Mindstorms EV3

Ya tenemos nuestra lista creada. Vamos ahora al icono de "Secuencia Numrica" y seleccionamos el Modo
"Longitud". Este icono de "Longitud" tiene una entrada para introducir la lista creada (flecha negra) y una salida
para indicar el resultado (flecha amarilla), es decir, la longitud de la secuencia.

Si te fijas donde seala la flecha negra de arriba, vers que hay como 2 solapas o pestaas. Esto indica que el dato es
del tipo "Array" o "Secuencia numrica". Es decir, no se trata de un nmero sino de una coleccin de nmeros.

Todas las entradas y salidas de secuencias tienen esas 2 pestaas, indicando as el qu tipo de datos contiene. Incluso
sus cables son ms gordos, como diciendo que por ah estn pasando muchos nmeros a la vez, as que no los
mezcles. En la siguiente imagen lo vers mejor. El programa lo explicamos abajo:

El primer icono (una variable) crea la lista 3,5,4,2. Esa lista la leemos en el segundo icono y la metemos en la
entrada del bloque "Secuencia Lgica" para que la lea. Su salida, es decir, el resultado de leer la longitud de nuestra
lista, la presentamos en pantalla y quedamos a la espera de pulsar el botn central (ok) del EV3. La longitud de esta
cadena es 4.

LEER EN EL INDICE

Este ttulo en realidad podra ser el de LEER (un valor) EN EL INDICE (de una lista). Lo primero: qu es el
ndice?. Pues es la posicin que ocupa cada elemento de la lista, empezando por el cero. Seleccionamos el Modo
correspondiente:
http://www.nxtorm.es/ayudas/ay-s1-array_EV3.html 4/8
11/7/2017 Tutorial "Operaciones Secuenciales" para LEGO Mindstorms EV3

En nuestra lista anterior, si leemos la posicin "1" obtendremos el nmero 5. El programa sera as:

En el ndice anterior hemos escrito un "1", pero tambin se podran haber ledo los datos desde un archivo con el
Data Logger, haber usado una variable o una constante, o en general, cualquier entrada vlida.

ANEXAR

Recordemos que ANEXAR era aadir un valor al final de nuestra lista de valores o bien de crear una lista nueva.

En la linea superior del siguiente programa anexamos un 7 al final de nuestra lista de valores 3,5,4,2 y volvemos a
almacenar el resultado en la misma lista, de forma que ahora nuestra variable (la lista) tendr una longitud de 5.

La lnea inferior del programa simplemente comprueba que la longitud es de 5. Seras capaz de modificar la parte
inferior del programa para comprobar si al final de la lista efectivamente hay un 7?

http://www.nxtorm.es/ayudas/ay-s1-array_EV3.html 5/8
11/7/2017 Tutorial "Operaciones Secuenciales" para LEGO Mindstorms EV3

Para crear una lista nueva podramos hacer como en el programa siguiente. Primero creamos una lista, exactamente
igual que hacamos antes con las variables. A continuacin leemos la longitud de la cadena creada y obtenemos un
misterioso "2".

El bloque "Anexar", nada ms ponerlo en el programa, viene ya con una lista creada con un elemento, el cero. A esta
lista de 1 elemento le anexamos un segundo cero (el que aparece bajo la maleta del icono), y por eso la longitud de la
cadena es 2.

Podemos eliminar uno de esos ceros para empezar con una cadena vaca. El mismo icono "Anexar" le aadir al
final un valor, que si no tocamos nada, ser un cero como aqu, pero que puede ser cualquiera. As, en la misma
operacin, creamos una lista vaca y le aadimos su primer valor.

Para empezar con una cadena vaca, una opcin es esta: pincha en la flecha rosa para que se abra el desplegable y
elimina el cero pinchando en la "X" que seala la flecha amarilla.

ESCRIBIR EN EL INDICE

Escribir (un valor) en el ndice (de una lista) es en realidad sustituir un valor concreto de la lista por otro que
nosotros queramos.

Recordemos nuestra lista original de 4 elementos: 3,5,4 y 2. Vamos a sustituir el 4 por un 8. Como este bloque es un
poco ms complicado, lo explicaremos antes. Tenemos 3 entradas de datos y una salida. La salida (flecha negra) es
la lista resultante tras la operacin de sustitucin/escritura en el ndice.

http://www.nxtorm.es/ayudas/ay-s1-array_EV3.html 6/8
11/7/2017 Tutorial "Operaciones Secuenciales" para LEGO Mindstorms EV3

En la primera entrada (flecha roja) enlazaremos la lista sobre la cual queremos trabajar. Si te fijas, tanto esta entrada
como la salida final tienen 2 pestaitas, indicando que son listas y no nmeros concretos. Es decir, en la primera
entrada entra la lista antes de hacerle nada y en la ltima sale la lista ya modificada.

Nos quedan las entradas centrales. La segunda entrada (flecha blanca) es el indice. El ndice nos dice qu dato de la
lista queremos sustituir, empezando a contar por el cero. En nuestro ejemplo (3,5,4,2), el 4 que queremos sustituir
ocupa la posicin 2. Por ltimo, la tercera entrada (flecha amarilla) sirve para decir el dato que queremos insertar en
la serie, en nuestro caso el 8.

As que, en nuestro caso, la cosa quedara como sigue: los cables amarillos son la entrada de la lista original y la
modificada. Y lo del medio, lo leemos como: "en la posicin 2 pon un 8".

Con todo, ya podemos escribir el programa. La primera parte usa el icono anterior para sustituir el 4 por un 8. Y la
segunda lnea del programa lo comprueba. Para ello, usamos el "Leer en el ndice", leemos la posicin 2 y la
escribimos en pantalla: afortunadamente aparece un 8. :-)

http://www.nxtorm.es/ayudas/ay-s1-array_EV3.html 7/8
11/7/2017 Tutorial "Operaciones Secuenciales" para LEGO Mindstorms EV3

http://www.nxtorm.es/ayudas/ay-s1-array_EV3.html 8/8

Вам также может понравиться