Listas doblemente enlazadas

Posted in Apuntadores, C++, clases, Corte 2, Listas | Posted by admin |

El presente tiene el código necesario para la clases de listas doblemente enlazadas.

main.cpp
Lista2.h
Talfin.h

La practica esta especificada en el código y adicionalmente debe realizar lo siguiente:

Realice un método de la lista doblemente enlazada que permita tomar coordenadas X y Y de un objeto guardado en una lista. El objeto a guardar en la lista tendrá las siguientes características. Una coordenada X y Y y una variable booleana llamada alive que inicializará en true.

Realice un método que permita al usuario ingresar un numero X y un numero Y si estos valores X y Y coinciden con algún valor de X y Y de algún objeto de la lista, este deberá cambiar el valor de alive a false.

Listas enlazadas simples

Posted in C++, Corte 2, Listas, Tips | Posted by admin |

Abajo encontrarán los links para la clase de Listas. En el código encontrarán las especificaciones para la práctica base, adicionalmente se deberá crear una opción donde el usuario elija un nodo y a partir de ese nodo se separe la lista en dos listas distintas.

main.cpp
Lista.h
Talfin.h

 

Clase de Colas

Posted in C++, clases, Colas, corte 1, objetos | Posted by admin |

Para el mejor entendimiento de esta clase es necesario manejar el uso de elementos contenedores de datos como los son las estructuras – arreglos y clases. Sin embargo existe información adicional desde el punto de vista lógico. Esto quiere decir que manejaremos otro tipo de contenedor lógico para las Estructuras dinámicas de datos. Este contenedor lógico lo llamaremos Nodo.

En este ejemplo de Colas guardaremos un elemento persona en la clase Nodo.

¿Que es una Cola?

Una estructura de datos que nos permite manejar Datos de forma dinámica y nos proporciona métodos para extraer nodos de forma FIFO (First In “primero en entrar” – First Out “primero en salir”).

El metodo de extraer datos de una Cola se conoce como POP() y el de insertar se conoce como PUSH().

El constructor de un Cola inicializa los apuntadores en NULL. A diferencia de la pila conseguiremos un primero y un último en vez de solo un último

Los siguientes códigos contienen un ejemplo de Cola:

SDL Class 2.1

Posted in C++, Corte 2, SDL, Tips | Posted by admin |

En el siguiente código observaremos como podemos cargar una imagen usando SDL.

main.cpp
world.bmp

Luego tenemos la versión mas avanzada del proyecto donde incluimos el personaje. Vean bien la diferencia entre ambos códigos.

main.cpp
sackboy.bmp

Introducción a SDL

Posted in C++, corte 1, SDL | Posted by admin |

Para este semestre usaremos SDL como la librería grafica para los proyectos que haremos.

Abajo encontrarán la página oficial de la librería, pueden utilizarla para descargarla y para documentación asi como ejemplos.

http://www.libsdl.org/index.php

Si ven la página tiene toda la documentación.

Para instalar SDL en Devcpp les recommiendo usar el updater de SDL y buscar la última versión. Si usan otro IDE como Visual C++, sigan los pasos de la página de SDL.

Para cualquier otro IDE y OS sin usar updaters, les recomiendo esta página:

http://lazyfoo.net/SDL_tutorials/lesson01/index.php

Aquí encontrarán un primer código de prueba solo para verificar que funciona la librería.

Código de prueba SDL1

Estructura dinámica de datos Pila en C++

Posted in Apuntadores, C++, clases, corte 1, objetos | Posted by admin |

Para el mejor entendimiento de esta clase es necesario manejar el uso de elementos contenedores de datos como los son las estructuras – arreglos y clases. Sin embargo existe información adicional desde el punto de vista lógico. Esto quiere decir que manejaremos otro tipo de contenedor lógico para las Estructuras dinámicas de datos. Este contenedor lógico lo llamaremos Nodo.

¿Porqué no utilizamos los ya existentes?

Porque en realidad si estamos haciendolo, estamos utilizando Clases, con el detalle de que creamos una clase Nodo para que sea portable a cualquier estructura dinámica de datos sin tener que hacer muchas modificaciones.

¿Qué es un Nodo?

Simplemente un contenedor de datos.

¿Qué podemos almacenar en un Nodo?

Cualquier Clase que hemos definido.

¿Que es una Pila?

Una estructura de datos que nos permite manejar Datos de forma dinámica y nos proporciona métodos para extraer nodos de forma LIFO (Last In “último en entrar” – First Out “primero en salir”).

El metodo de extraer datos de una pila se conoce como POP() y el de insertar se conoce como PUSH().

El constructor de un Pila inicializa los apuntadores en NULL.

Los siguientes códigos contienen un ejemplo de Pilas:

Proyectos de Programación III P121

El presente tiene la finalidad de describirles el contenido de los proyectos que deberán entregar para materia programación III. El programa de la materia exige que sean evaluados un conjunto de temas específicos por lo que el proyecto en su ejecución deberá emplear el conocimiento de estos temas (Punteros – Objetos – Estructuras – Pilas – Colas – Listas).

Grupos Máximo de 3 integrantes

Estructuras vs. Objetos en C++

Posted in C++, clases, corte 1, estructuras, objetos | Posted by admin |

Información de la clase de estructuras:

Información de la clase de objetos:

Clase avanzada:

Practica:

Referencias y apuntadores en C++

Posted in Apuntadores, C++, clases, funciones, recursividad, referencias | Posted by admin |

Para la clase de referencias se entregan los siguientes archivos:

Práctica: (Individual)

Realice los ejercicios usando los conocimientos de referencias y punteros:

  1. Realice una función que reciba un puntero a un entero (int *) X  y un número entero (int) N  y retorne un arreglo de N posiciones.
  2. Escriba en una hoja con sus propias palabras 3 situaciones en las que usaría punteros para resolver un problema y 3 situaciones en las que usaría referencias. Explique porqué?