problemarioprogramaciónoo
TRANSCRIPT
Universidad Nacional Experimental de Guayana.
Coordinación de Ingeniería en Informática.
Asignatura: Programación II.
Profesor: Ing. Ronald Pérez.
Ejercicios de Analisis, Diseño y Programación
1. Diseñe las clases necesarias para modelar una Valida del 5 y 6, donde la valida está
compuesta por cierto números de carreras y en cada carrera participan 6 caballos. Deberá
contemplar la creación de cada carrera con sus correspondientes caballos, además de dar la
salida de los caballos, donde el caballo ganador será el que se genere en forma aleatoria.
2. Diseñe las clases necesarias para modelar una biblioteca, donde existan libros de distintos
tipos. Se podrá retirar un libro en calidad de préstamo, comprar libros, incorporar nuevos
libros y desincorporar libros de la biblioteca.
3. Diseñe las clases necesarias para modelar un estacionamiento de vehículos, donde los
vehículos pueden entrar y salir las 24 horas del durante todo el año. Asuma que el
estacionamiento tiene un máximo de 50 puestos.
4. Responda las siguientes preguntas en forma escrita.
a) ¿Qué es herencia?
b) Explique cuál es la razón por la cual los atributos de una clase deben
declararse private y los métodos public.
c) ¿Qué diferencia hay entre atributos private y atributos protected?
d) ¿Cuál es la diferencia entre clase y objeto?
e) ¿Cuál es la diferencia entre agregación y generalización
f) ¿Cuál es la utilidad de crear un método SET en una clase?
g) ¿Cuál es la utilidad de la sobrecarga de métodos? Escriba un ejemplo.
h) ¿Qué es agregación?
i) ¿Qué es generalización?
5. Se desea crear una aplicación para representar la fauna de un país. Se representaran los
mamíferos, peces y aves. De los mamíferos se consideraran si viven en el agua o en la tierra.
Además de proveer la flexibilidad de poder expandir dicha lista de animales para mejoras de
la aplicación a futuro. Además el sistema deberá guardar un historial de los primeros 100
animales clasificados. Realizar el diagrama de clases con las relaciones necesarias para poder
crear dicha aplicación. Deberá especificar el tipo de relación entre las clases.
Universidad Nacional Experimental de Guayana.
Coordinación de Ingeniería en Informática.
Asignatura: Programación II.
Profesor: Ing. Ronald Pérez.
6. Se desea crear una aplicación para representar el funcionamiento de una Biblioteca. La
biblioteca manejara libros, medios audiovisuales y publicaciones periódicas. Entre los
medios audiovisuales se tiene videos y música. Además de proveer la flexibilidad de poder
expandir dicha lista de elementos de la biblioteca para mejoras de la aplicación a futuro.
Además el sistema deberá guardar un historial de los elementos almacenados en la Biblioteca
(asuma un máximo de 100). Realizar el diagrama de clases con las relaciones necesarias para
poder crear dicha aplicación. Deberá especificar el tipo de relación entre las clases.
7. Se desea crear una aplicación para dibujar figuras geométricas. Con la aplicación se podrá
dibujar: cuadriláteros, círculos y triángulos. Entre los cuadriláteros deberá representar
cuadrados y rectángulos. Además de proveer la flexibilidad de poder expandir dicha lista de
figuras geométricas para mejoras de la aplicación a futuro. El sistema deberá guardar un
historial de las primeras 50 figuras creadas .Realizar el diagrama de clases con las relaciones
necesarias para poder crear dicha aplicación. Deberá especificar el tipo de relación entre las
clases.
8. Diseñe un diagrama de objetos para llevar control de las solicitudes de las canciones de su
preferencia, hechas por los oyentes a las estaciones de radio. Se debe contemplar en el
diseño, un registro de los usuarios de la estación de radio, histórico de solicitudes hechas por
ellos, registro de canciones de la estación, locutores de la estación y programación de la
misma.
9. La Universidad Metropolitana desea elaborar un sistema de reservaciones de espacio físico.
La universidad está formada por Aulas, Laboratorios, y Auditorios. Por otra parte las Aulas
pueden ser Aulas Sencillas o Aulas Multimedios. El sistema debe contener información
sobre: identificación, capacidad y ubicación de cada espacio físico Igualmente se deberá
tener información acerca de las reservaciones de las cuales se conocerá: fecha y hora de
reservación, identificación del espacio reservado y nombre de la persona que reserva. Se
quiere además mantener un registro con cada una de las reservaciones realizadas. Elabore el
diagrama de clases para representar el nuevo sistema.
10. La compañía Simco ha diseñado un nuevo disco duro con capacidad superior a los vistos
hasta ahora. La programación para manipular el disco duro, ha sido diseñada en forma
orientada a objetos, es decir, visualizando el disco duro como un objeto. El disco estará
constituido por directorios, donde cada directorio contiene una serie de objetos archivos.
Adicionalmente se está diseñando el sistema operativo que manejará el disco, la
permisología del disco, se controla por usuario, los cuales se definen por grupos donde cada
grupo tiene accesos a diferentes directorios. Como parte del sistema operativo, se desea
mantener una historia (log) de todos los accesos realizados al disco, los directorios y los
archivos. Elabore el diagrama de clase que permita representar el nuevo disco, junto con el
sistema operativo que la compañía Simco desea implementar.
Universidad Nacional Experimental de Guayana.
Coordinación de Ingeniería en Informática.
Asignatura: Programación II.
Profesor: Ing. Ronald Pérez.
11. Definir una clase Persona que contenga información de propósito general común a todas las
personas (nombre, dirección, fecha de nacimiento, sexo, etc.) diseñar una jerarquía de clases
que contemple las siguientes clases: estudiante, empleado, empleado_estudiante.
12. Implementar una jerarquía Librería que tenga al menos una docena de clases. Considérese
una librería que tenga colecciones de libros de literatura, humanidades, tecnología, etc.
13. Implementar la clase Automóvil dentro de una jerarquía de herencia múltiple. Considere que,
además de ser un vehículo, un automóvil es también una comodidad, un símbolo de estado
social, un modo de transporte, etc. Automóvil debe tener al menos tres clase base y al menos
tres clases derivadas.
14. Crear una clase llamada hora que tenga miembros de datos separados de tipo int para horas,
minutos y segundos. Un constructor inicializará este dato a 0, y otro inicializará a valores
fijos. Una función miembro deberá visualizar la hora en formato 11:59:59. Otra función
miembro sumará dos objetos de tipo hora pasados como argumentos. Una función principal
main() crea dos objetos inicializados y uno que no está inicializado. Sumar los dos valores
inicializados y dejar el resultado en el objeto no inicializado. Por último visualizar el valor
resultante.
15. Crear una clase llamada empleado que contenga como miembro dato el nombre y el número
de empleado, y como funciones miembro leerdatos() y verdatos() que lean los valores del
teclado y los visualice en pantalla, respectivamente. Escribir un programa que utilice la clase,
creando un array de tipo empleado y luego llenándolo con datos correspondiente a 50
empleados. Una vez rellenado el arrays, visualizar los datos de todos los empleados.
16. Realizar un programa que calcule la distancia media correspondiente a 100 distancias entre
ciudades dadas cada una en kilómetros y metros.
17. Definir una clase Racional que represente a números racionales. Los miembros privados
serán el numerador y el denominador de la fracción, y en la parte pública se debe disponer al
menos de las siguientes funciones miembros: asignar, convertir, invertir, imprimir, que
realizarán las funciones de: asignar los valores de los parámetros y numerador y
denominador respectivamente (por ejemplo, 22/7); convertir a decimal el decimal el número
racional (por ejemplo, 3.14286); calcular el inverso de la fracción (por ejemplo, 77/22) y por
último, visualizar la fracción (por ejemplo, ha de ver 22/7, 6/15, etc.)
18. Implementar la clase Punto que represente a puntos de tres dimensiones (x, y, z). Incluir un
constructor por defecto, un constructor de copia, función negar que transforme el punto en su
opuesto, una función norma que devuelva la distancia al punto desde el origen (0, 0, 0) y una
función visualizar.
Universidad Nacional Experimental de Guayana.
Coordinación de Ingeniería en Informática.
Asignatura: Programación II.
Profesor: Ing. Ronald Pérez.
19. Implementar la clase Hora. Cada objeto de esta clase representa una hora específica de un
día, almacenado en horas, minutos y segundos como entero. Incluir un constructor, funciones
de acceso, una función avanzar() para avanzar(adelantar)la hora actual de un objeto
existente, una función poner_a_cero para poner a cero la hora actual de un objeto existente y
una función visualizar.
20. Implementar la clase Cadena. Cada objeto de la clase representa una cadena de caracteres.
Los miembros datos son la longitud de la cadena y la cadena de caracteres actual. Además,
se debe añadir constructores, destructor, funciones de acceso y función de visualizar, así
como incluir una función carácter que devuelva el carácter de la cadena representado por el
parámetro i que representa el índice o lugar del carácter en la cadena.
Procuraduria Federal de Proteccion al Ambiente | Gobierno ... usnr syn VIOlLSrc VNn uvunoo&i ano NOO
Presentaciأ³n de PowerPoint - ep O!ln! ap la opeo!lqnd noo SOIOIAES 30 a;uan9 'eseA!qoJY esenb!unwoo