Diseño
y Programación Orientados a Objetos
1er. Sem 2005
Tarea 4: Nuestra clase Conjuntos en C++
En esta tarea usted va a crear una clase que nos permitirá
representar conjuntos. Además deberá hacer uso de objetos
creados en forma dinámica con el fin de observar la necesidad de
contar con coonstructor copia, destructor, y sobrecarga del
operador asignación.
La tarea será revisada desde consola; es decir se requiere que
usted cree un archivo Makefile para que el ayudante compile su trabajo
sólo ejecutando la sentencia
$ make
Para ejecutar su programa el ayudante ejecutará
$ make run
La tarea se puede dividir en dos partes: la descripción e
implementación de la clase Conjunto y un programa de prueba que
verificará si su lace efectúa bien las operaciones que se
indican más abajo.
Descripción de la clase Conjunto
La idea es que esta clase represente lo mejor posible el comportamiento
de conjuntos en sentido matemático. Estos conjuntos sólo
contendrán elementos enteros. Por ello su clase debe
permitir operaciones como:
- Creación de un conjunto con un elemento único.
- Unión de un conjunto con otro (usaremos el operador + para
ello).
- Intersección de un conjunto con otro (usaremos el operador
* para ello).
- Obtener la cardinalidad de un conjunto.
- Determiar si un elemento pertenece o no al conjunto.
- Determinar si dos conjuntos son iguales. (usaremos el operador ==
para ello)
Además de las anteriores, la clase conjunto que usted
implementará contendrá las operaciones de:
- Agregar un elemento al conjunto
- Limpiar el conjunto, esto es eliminar todos los elemento de
éste.
Para efectos de revisar su tarea, usted debe proveer el programa de
prueba que llamará prueba.cpp. Éste contiene la
función main. El ayudante es libre de probar su clase con otro
archivo de prueba.
Para partir usted puede considerar los siguientes archivo que definen
la versión preliminar de la clase Conjunto
y el archivo prueba.cpp.