Descargar

Listas simples enlazadas en Flash CS5

Enviado por freddy chura


  1. Objetivo
  2. Marco teórico
  3. Flash CS5

Objetivo

Aplicar conocimientos aprendidos acerca de listas enlazadas y realizar un programa en flash cs5 para ilustrarlo con ejemplos y posteriormente subirlo a internet

Marco teórico

Para este proyecto se utilizo el concepto de listas enlazadas simples, programa de flash cs5 y una página web.

LISTAS SIMPLES ENLAZADAS

Las listas enlazadas son estructuras de datos semejantes a los array salvo que el acceso a un elemento no se hace mediante un indice sino mediante un puntero. La asignación de memoria es hecha durante la ejecución. En una lista los elementos son contiguos en lo que concierne al enlazado.

edu.red

En cambio, mientras que en un array los elementos están contiguos en la memoria, en una lista los elementos están dispersos. El enlace entre los elementos se hace mediante un puntero. En realidad, en la memoria la representación es aleatoria en función del espacio asignado. El puntero siguiente del último elemento debe apuntar hacia NULL (el fin de la lista). Para acceder a un elemento, la lista es recorrida comenzando por el inicio, el puntero siguiente permite el desplazamiento hacia el próximo elemento. El desplazamiento se hace en una sola dirección, del primer al último elemento. Si deseas desplazarte en las dos direcciones (hacia delante y hacia atrás) deberás utilizar las [ listas doblemente enlazadas]

Flash CS5

Se trata de una aplicación de creación y manipulación de gráficos vectoriales con posibilidades de manejo de código mediante un lenguaje de scripting llamado ActionScript. Flash es un estudio de animación que trabaja sobre "fotogramas". Teniendo en cuenta este concepto podremos crear nuestras propias animaciones de "listas simples enlazadas". Para realizar esto realizaremos una Página WEB donde explicaremos los algoritmos básicos de listas simplemente enlazadas. De la siguiente manera:

  • i. crear una lista enlazada

  • ii. Listado

  • iii. Agregar nodo en la cabecera (como ejemplo varios nodos)

  • iv. Agregar un nodo al centro, si se puede

  • v. Agregar un nodo al final de la lista

  • vi. Quitar un nodo de la cabecera

  • vii. Quitar un nodo del centro

  • viii. Quitar el último nodo de la lista

Estos son los algoritmos básicos que contiene nuestro proyecto de flash cs5 y cada uno tiene su respectiva animación y respectivo código.

Esta es la imagen final de la aplicación en flash cs5.

edu.red

El grafico ilustra una pantalla vacía donde ira nuestra animación en la parte inferior vemos una serie de botones los cuales al ser accionados nos mostraran las respectivas animaciones.

Animación de Botones

Los botones realizados en flash cs5 son botones animados los cuales nos permitirán comunicarnos con las respectivas acciones de las listas enlazadas simples.

edu.red

El código de abajo nos muestra como está animado un botón esta animación no contiene el código que nos conectara con las imágenes animadas eso lo veremos después.

edu.red

Algo que debemos tener encuentra es que todos los botones del proyecto tienen la misma animación. Se podría utilizar otras animaciones pero se vería un poco diferente si todos los botones hacen una animación separada.

edu.red

Acciones de los botones

Las acciones de los botones son los que deberían mostrarnos las graficas que tenemos abajo es decir que al hacer click en un botón debería mostrarnos la animación del mismo y su respectivo código.

edu.red

Para que un botón y una animación interactúen se debe agregar un serie de códigos para eso creamos una máscara la cual será exclusivamente para código.

edu.red

Para eso seleccionamos la mascara y buscamos la siguiente flecha que se encuentra en la parte superior.

edu.red

Una vez que ingresemos en la flecha nos aparecerá una pantalla en blanco donde deberemos ingresar la serie de códigos que necesitemos para animar nuestras imágenes

edu.red

Para poder animar los botones ingresamos la siguientes líneas de código en la mascara que creamos lo cual nos permitirá animar los botones.

edu.red

Algo que debemos tomar en cuenta es que para animar otro botón no es necesario crear otra mascara ya que podemos colocar el código de todos los botones en una sola mascara así será más como de manejar.

Pagina web

La página web será el medio por el cual subiremos nuestra aplicación ya terminada en flash a internet.

Para que nuestra página web pueda agregar nuestro programa de flash con todas sus funciones se siguen los siguientes pasos:

1) copiamos los dos archivos del flash que queremos jalar

edu.red

2) pegamos los archivos en la carpeta de imágenes que tenemos la cual se encuentra en la página web que cree.

edu.red

3) una vez ingresado los archivos debemos cambiar el código de nuestra página web. Como podemos ver en la imagen basta con cambiar la sección que esta seleccionada e ingresar el nombre de nuestro proyecto de flash en este caso es "lista.swf"

edu.red

4) ahora ingresaremos a la pagina web.

edu.red

La página debería aparecernos de la siguiente manera

edu.red

Como se puede apreciar nuestra aplicación en flash ingreso correctamente a nuestra pagina web. Esto demuestra que se jalaron correctamente los archivos del flash caso contrario nos tendría que aparecer una pantalla en negro.

Código listas simplemente enlazadas

Ahora veremos el código que usamos como imagen para cada uno de nuestras animaciones en flash:

1.-crear una lista enlazada

public static nodo nuevo(){ nodo nuevo = new nodo(); nuevo.dato=leer("dato?: "); nuevo.sgte=null; return (nuevo); }

2.-Listado

public static class nodo { int dato; nodo sgte; } public static void listado(nodo mi){ while(mi!=null){ System.out.println("dato "+mi.dato); mi=mi.sgte; } }

3.-Agregar nodo en la cabecera

public static nodo add_cab(nodo z)

{ nodo a = nuevo(); a.sgte=z; return(a); }

4.-agregar nodo al centro

public static void add_centro (nodo cab1)

{ nodo nuevo1; int c1 = contar(cab1);

if(c1>=2) { nuevo1 = nuevo();

for(inti=1;i

cab1 = cab1.sgte } nuevo1.sgte=cab1.sgte;

cab1.sgte = nuevo1; } }

5.-Agergar un nodo al final de la lista

public void insertarUltimo(int x) { Nodo nuevo=new Nodo(); nuevo.info=x; if (raiz==null) { nuevo.sig=nuevo; nuevo.ant=nuevo; raiz=nuevo; } else { Nodo ultimo=raiz.ant; nuevo.sig=raiz; nuevo.ant=ultimo; raiz.ant=nuevo; ultimo.sig=nuevo; } }

6.- Quitar un nodo de la cabecera

public static void Eliminar(nodo cab) trowns IOException {cab1=cab;while(cab1.sgte!=null){cab2=cab1;cab1=cab1.sgte;}cab2=sgte=null;}

7.- Quitar un nodo del centro

public static nodo mitad(nodo cab1){int n = contar (cab1)nodo cab2;for (int i=0;i

8.-Quitar ultimo nodo de la lista

void eliminarUltimo(){if(primero.sgte==null){primero=primero.sgte;}else{Nodo temp=primero.sgte;Nodo aux=primero;while(temp.sgte!=null){temp=temp.sgte;aux=aux.sgte;}aux.sgte=null;}}

 

 

 

Autor:

Freddy Chura