Anda di halaman 1dari 15

Universidad Mayor de San Andrs Facultad de Ciencias Puras y Naturales Carrera de Informtica

Algoritmos y Programacin INF-121 Gestin II/2011

INF-121
Programacin Orientada a Objetos
1. Dado el siguiente escenario, identificar 7 clases, cada una con al menos 3 atributos y 3 mtodos (diferentes del leer, mostrar, constructores, gets y sets). EL PRECIO DEL CONOCIMIENTO
Algunas veces es un error juzgar el valor de una actividad simplemente por el tiempo que toma realizarla... Un buen ejemplo es el caso del ingeniero que fue llamado a arreglar una computadora muy grande y extremadamente compleja... una computadora que vala 12 millones de dlares. Sentado frente a la pantalla, oprimi unas cuantas teclas, asinti con la cabeza, murmur algo para s mismo y apag el aparato. Procedi a sacar un pequeo destornillador de su bolsillo y dio vuelta y media a un minsculo tornillo. Entonces encendi de nuevo la computadora y comprob que estaba trabajando perfectamente. El presidente de la compaa se mostr encantado y se ofreci a pagar la cuenta en el acto. - Cunto le debo? pregunt. - Son mil dlares, si me hace el favor. - Mil dlares? Mil dlares por unos momentos de trabajo? Mil dlares por apretar un simple tornillito? Ya s que mi computadora cuesta 12 millones de dlares, pero mil dlares es una cantidad disparatada! Le pagar slo si me manda una factura perfectamente detallada que la justifique. El ingeniero asinti con la cabeza y se fue. A la maana siguiente, el presidente recibi la factura, la ley con cuidado, sacudi la cabeza y procedi a pagarla en el acto, sin chistar. La factura deca: Servicios prestados: Apretar un tornillo............ US $1 dlar Saber qu tornillo apretar.... US $999 dlares Manda este mail a todos aquellos profesionales que da a da se enfrentan con la desconsideracin de quienes por su propia ignorancia no alcanzan a entenderlos. RECUERDA: "SE GANA POR LO QUE SE SABE, NO POR LO QUE SE HACE".

2. Sean las entidades educativas Universidad y Colegio se pide: a) Realizar el diagrama de clases e identificar 5 atributos significativos para cada clase y 5 mtodos (diferentes del leer, mostrar, constructores, get y set). b) Mostrar la entidad con ms antigedad c) Contar cuantos alumnos varones existe en cada entidad d) Verificar si ambas instituciones se encuentran en la misma direccin

Universidad Mayor de San Andrs Facultad de Ciencias Puras y Naturales Carrera de Informtica

Algoritmos y Programacin INF-121 Gestin II/2011

3. Sea la Clases Disco Duro se pide: Disco_Duro Marca Modelo Capacidad

a) b) c) d)

Establecer 4 constructores diferentes. Instanciar 4 objetos de una forma distinta. Mostrar el disco duro con mayor capacidad (puede haber ms de uno). Verificar si existe el disco duro de modelo X

4. Sea la clase mochila y libro


a) b) c) d) Realizar el diagrama UML y hallar al menos 4 atributos significativos. Instanciar 2 objetos de cada clase. Mostrar los objetos de color z. De los objetos instanciados mostrar el objeto con menor costo (puede haber ms de uno).

5. Celular y reproductor mp4


a) b) c) d) e) f) Realizar el diagrama UML y hallar al menos 4 atributos por clase Instanciar 2 objetos de cada clase. Mostrar los objetos de color z. De los objetos instanciados mostrar el objeto con mayor y menor costo. Verificar si los celulares son iguales. Verificar si los reproductores mp4 son diferentes.

6. Sea la clase lista de estudiantes definido de la siguiente manera: Paterno Materno Nombres 1er-par 2do-par
Ramos Salazar Canaviri Mendoza Francisco Mara 25 13 10 15

3er-par
23 15

Ayudanta
5 8

a) Mostrar a los alumnos aprobados. b) Adicionar x puntos a un alumno en la i-sima posicin. c) Eliminar al alumno con la menor nota.

7. Defina la clase computadora (laptops) establezca los siguientes mtodos: a) Realizar el diagrama UML y hallar al menos 4 atributos por clase b) Comparar el color de las dos laptops. c) Verificar si 3 objetos son iguales. d) Dado 2 objetos cambiar de sistema operativo al objeto de mayor costo. e) Dado 2 objetos verificar si usan Ubuntu

Universidad Mayor de San Andrs Facultad de Ciencias Puras y Naturales Carrera de Informtica

Algoritmos y Programacin INF-121 Gestin II/2011

8. Defina la clase mochila y establezca los siguiente: a) Realice el diagrama UML b) Verificar si la mochila es de marca x. c) Sean dos mochilas mostrar a la mochila de mayor costo. d) Mostrar la mochila que tenga la longitud mayor en su marca. 9. Sea la clase zona que consta de los siguientes atributos Zona
Nombre_zona Nombre_jefe_zona Nro_casas Vector_nombres_vecinos[] Nro_puerta[]

a) b) c) d)

Instanciar 2 zonas determinar si una persona tiene casas en las zonas instanciadas Eliminar la i-sima casa de cada zona. Adicionar una casa en la j-sima posicin de cada zona.

Polimorfismo

Sobrecarga de Funciones
1. Sobrecargar el constructor del objeto celular para colocar los tributos con ningn parmetro, con un parmetro y con dos parmetros. 2. Sea en el contexto biblioteca, se pide sobrecargar los mtodos leer, mostrar, constructor, con 0, 1, y 2 parmetros 3. Sea la clase matriz de enteros sobrecargar los mtodos para: a. Leer de 3 maneras distintas b. Mostrar de 3 maneras distintas c. Sobrecargar el mtodo eliminar() para: i. Dado [i , j] poner en esa posicin el valor -1 ii. Dado [i, j], [a, b] poner en -1 los valores q estn en ese rango. 4. Sea la clase conjunto de nmeros enteros (mayores a 1000), sobrecargar un mtodo para: a. Contar cuantos nmeros son capicas b. Eliminar al menor nmero del conjunto. c. Dado dos conjuntos invertir los nmeros de mayor valor d. Dado dos conjuntos eliminar a los elementos comunes.

5. Sea la clase vector, realizar los siguientes mtodos:


a. b. c. d. e. Determinar cuntos elementos pertenecen a la serie Fibonaci. Reemplazar todos los elementos primos del vector por su siguiente primo. Verificar si el elemento Z pertenece al vector. Determinar el nmero de elementos que son mltiplos de K. Para la realizacin de los problemas anteriores, dar como nombre de los mtodos resolver, de esta manera aplique sobrecarga de funciones.

Universidad Mayor de San Andrs Facultad de Ciencias Puras y Naturales Carrera de Informtica

Algoritmos y Programacin INF-121 Gestin II/2011

6. Sea el Ranking Televisivo definido de la siguiente manera. Nombre Canal TV Inter RTI CTV TV-PONG TV-UTRA KIDS-TV Depto.1 54 67 34 76 87 54 Depto.2 76 97 65 53 65 78 Depto.3 23 79 34 85 34 46 Depto.4 87 56 37 68 68 56 Depto.5 45 47 96 67 75 98

El nmero que se encuentra en cada departamento representa el porcentaje de audiencia del canal televisivo. a. b. c. d. Realizar el Diagrama de clase. Sobrecargar funcin para mostrar el canal mas visto en cada departamento. Sobrecargar funcin para mostrar el canal mas visto en todos los departamentos. Sobrecargar funcin para verificar si el promedio de audiencia del canal X en todos los departamentos es mayor al 50% e. Sobrecargar funcin para verificar si existe algn canal con audiencia menor a Z%.

Sobrecarga de Operadores
1. Alice y Bob son hermanos, Bob es el menor, y el est aprendiendo a sumar, pero el al sumar se olvida del acarreo. Un da su mam les regala una bolsa de dulces. Alice quiere aprovecharse de su hermanito sabiendo que l no puede sumar bien. Ej. 5 + 4 = 9 Pero Bob suma 9 5 + 5 = 10 Pero Bob suma 0 9 + 9 = 18 Pero Bob suma 8 123 + 999 = 1122 Pero Bob suma 12 Se la clase a)Sobrecargar un operador para realizar la operacin suma q Bob realiza. 2. La empresa TUXER se dedica al desarrollo de software, y realiza muchas actividades diarias, como el control de personal, programas desarrollados, entre otras cosas. Empresa Nombre Ubicacin Nro_emp Empleado[50, 5]

Universidad Mayor de San Andrs Facultad de Ciencias Puras y Naturales Carrera de Informtica

Algoritmos y Programacin INF-121 Gestin II/2011

Donde la matriz de empleados contiene los siguientes datos. Nombre Paterno Materno Cargo Sueldo

La empresa al estar tan ocupada solicita a un programador para hacer las siguientes tareas, con las siguientes restricciones: a) Sobrecargar el operador + para adicionar un empleado. b) Sobrecargar el operador para eliminar a un empleado. c) Sobrecargar el operador == para verificar la existencia de un empleado d) Ahora teniendo en cuenta a la empresa hermana NODDLES, q tiene exactamente la misma estructura sobrecargar el operador > para comparar q empresa tiene ms empleados. 3. Dada la clase Conjunto_de_Puntos, donde Punto tiene como atributos a [x, y] se pide: a) Implementar la Clase Conjunto_de_Puntos b) Sobrecargar el Operador + para hallar la distancia entre dos puntos. (distancia entre P1, P2 es (P1. x P2. x)2 + (P1. y P2. )2 donde P1 y P2 son puntos). c) Sobrecargar el operador ++ para hallar en Punto mximo y el Punto mnimo de todo el Conjunto de Puntos y ver qu distancia los separa. 4. En la pueblito de Tailandia muy famoso por su agricultura manejan un sistema muy antiguo de registro de su produccin por ejemplo: Han producido 5 Toneladas de maz, 3 toneladas de trigo, 3 toneladas de arroz. El capataz va anotando de la siguiente manera: aaammmmmttt. Pero las personas del lugar no le avisas de por total producido sino q cada vez q llegan a cumplir una tonelada le avisan para que l lo anote. Por ejemplo Se ha producido 1 Tonelada de arroz, despus de cierto tiempo 1 tonelada de maz, 2 Toneladas de trigo, 2 de arroz, 4 de maz y finalmente una de trigo: El capataz anota lo siguiente: amttaammmmt. Ellos requieren rendir informes lo ms antes posible y se le pide: a) Sobrecargar un operador para ordenar de forma ascendente toda la lista de produccin b) Sobrecargar un operador para contar cuantos cultivos hay del tipo x c) Sobrecargar un operador para contabilizar cuantos productos existen de cada tipo.

Universidad Mayor de San Andrs Facultad de Ciencias Puras y Naturales Carrera de Informtica

Algoritmos y Programacin INF-121 Gestin II/2011

Herencia

Herencia Simple
1. Implementar la siguiente jerarqua de clases.

2. Sea la siguiente jerarqua de clases: Persona

Administrativo

Docente

a) Identificar 3 atributos relevantes en cada clase. b) Instanciar un Administrativos y un docente verificar si son de la misma nacionalidad. c) Verificar si un administrativo tiene ms de 15 aos de antigedad d) Dado un docente y un administrativo mostrar el nombre de la persona mayor. 3. Sea la jerarqua de clases.

a. Identificar por lo menos un atributo en cada clase y agregar el atributo porcentaje a la clase examen. b. Establecer 1 constructor con argumentos y el mtodo mostrar en cada clase. c. Instanciar 1 examen de inf-121 y 1 examen de lab-121 y verificar si tienen el mismo porcentaje.

Universidad Mayor de San Andrs Facultad de Ciencias Puras y Naturales Carrera de Informtica

Algoritmos y Programacin INF-121 Gestin II/2011

4. Dada la siguiente jerarqua de clases: Hoja

Tarjeta_Asistencia

Identificar los atributos y mtodos ms significativos Dados 2 objetos Tarjeta Asistencia comparar si son de la misma dimensin. Cambiar el color de una Tarjeta de Asistencia si es del empleado Z. Dados 2 objetos Tarjeta de Asistencia incrementar en una unidad su grosos si es del color X. 5. Implementar la siguiente jerarqua de clases:

a. b. c. d.

a) Instanciar 2 objetos de cada clase derivada b) Verificar cuales son del mismo color. c) Dado dos instancias, de un telfono fijo y otro celular, mostrar cual es el que tiene mayor costo. d) Verificar si existe algn telfono de la marca X. 6. Sea en el contexto software se pide completar e implementar la siguiente jerarqua de clases. SOFTWARE

Universidad Mayor de San Andrs Facultad de Ciencias Puras y Naturales Carrera de Informtica

Algoritmos y Programacin INF-121 Gestin II/2011

Herencia Mltiple
1. Sea la siguiente jerarqua de clases

a) b) c) d)

Identificar 2 atributos relevantes y sus mtodos correspondientes en cada clase. Instanciar 2 diputado y verificar si son del mismo departamento. Verificar si algn diputado tiene X aos. Desplegar el nombre del diputado que gana ms sueldo.

2. Dado el siguiente diagrama de clases en el contexto universidad:

a) Identificar las clases. b) Identificar 2 atributos. c) Identificar mtodos relevantes (diferentes de constructores, leer y mostrar).

Agregacin y Composicin
1. Una empresa que desarrolla web-sites requiere tener un control 2. Sea el siguiente diagrama de clases:

Universidad Mayor de San Andrs Facultad de Ciencias Puras y Naturales Carrera de Informtica

Algoritmos y Programacin INF-121 Gestin II/2011

a) b) c) d)

Instanciar Dos universidades Mostrar las carreras en que esta el estudiante X en la primera universidad Comparar q Carreras existen en ambas universidades. Compara q estudiantes estn en la universidad 2 pero no en 1.

3. Existe un torneo de Dota el cual tiene exactamente 5 jugadores por equipo como se muestra en el siguiente diagrama.

Donde la probabilidad de que un equipo gane a otro est dado por la media de la suma de el ranking de todos los jugadores del equipo (ranking es un valor en el rango de 1-100). Nota. La cantidad de equipos en el torneo debe ser una potencia de 2 (i.e. 2 1, 22, 23,). Se pide: a) Seleccionar que equipos juegan contra quien, y guardando en la lista de nombres de los equipos. b) Dado que la probabilidad de que gane el equipo1 al equipo2 es la media de la suma de los ranking de cada equipo, eliminar a los equipos que vayan siendo eliminados del torneo c) Actualizar la lista con los nombres de los equipos que todava estn en el torneo y repetir los incisos a) y b) hasta que solo quede un ganador. 4. Sea un pas que tiene ciudades y carreteras como se muestra en el diagrama.

a) Instanciar un objeto Pas b) Determinar el nmero de habitantes del pas c) Verificar si existe una ruta que lleve de la ciudad1 X a la ciudad2 Y

Universidad Mayor de San Andrs Facultad de Ciencias Puras y Naturales Carrera de Informtica

Algoritmos y Programacin INF-121 Gestin II/2011

5. Mediante la siguiente grfica realizar:

(2,1) (2,3) (3,6) (0,2) (12,1) (1,3) (11,1)

(0,4) (3,5) (1,4)

(12,0) (4,9) (1,5) (2,5) (4,4)

(1,2) (2,4) (4,3) (0,2) (4,0) (4,6)

(2,33) (0,1) (2,2) (3,1) (1,0) (4,2) (2,6)

(2,3) (1,3) (16,1) (1,0) (3,9) (4,5) (6,6) (3,3)

a. b. c. d. e.

Diagrama de clases y las relaciones que existen entre todas las clases. Mostrar los puntos que sumados den el numero x. Verificar si existe el punto (x, y). Asignar el valor de 0 a todos los nmeros primos. Modificar la matriz en la posicin i, j.

6. Mediante la siguiente grfica realizar: Donde cada doctor tendr una cantidad determinada de pacientes:

a. El diagrama de clases identificando sus correspondientes atributos y mtodos necesarios para resolver los problemas. b. Mostrar los datos del doctor que tiene como paciente a la persona X. c. Eliminar al i-simo paciente del doctor Z.

10

Universidad Mayor de San Andrs Facultad de Ciencias Puras y Naturales Carrera de Informtica

Algoritmos y Programacin INF-121 Gestin II/2011

7. Sean las siguientes clases.

a. b. c. d. e.

Identifique las relaciones que existe entre las clases. Verificar si existe el libro con el nombre X. Verificar si existe el algn estudiante tiene el mismo nombre que el de un bibliotecario. Mostrar los nombres de los estudiantes que pertenecen a la carrera Z. Mostrar los datos del mueble que tiene como material el atributo Y.

8. Sea un pas que posee un conjunto de departamentos y cada departamento tiene un conjunto de provincias.

a. b. c. d.

Mostrar la superficie total del departamento con nombre X. Mostrar el departamento con menor cantidad de habitantes. Mostrar la extensin y la poblacin total del pas. Mostrar el nombre de la provincia que tiene menor cantidad de habitantes y mostrar a que departamento pertenece. e. Verificar si existe la provincia con nombre X, en un departamento Z

11

Universidad Mayor de San Andrs Facultad de Ciencias Puras y Naturales Carrera de Informtica

Algoritmos y Programacin INF-121 Gestin II/2011

9. Sean las siguientes clases:

a. Identifique las relaciones que existen entre cada clase como su cardinalidad, si existe. b. Mostrar los datos de la caja que tiene ms clientes. c. Eliminar a los clientes que tengan 0 dentro de su nmero de cuenta. d. Adicionar a la caja con menos clientes, a todas las personas de la tercera edad. e. Mostrar el nmero total de mujeres que estn esperando la atencin. 10. Sea un artista que posee un conjunto de lbumes y cada lbum posee un conjunto de canciones.

a. b. c. d.

Mostrar la cancin con menos duracin de todos lbumes. Eliminar la cancin i-sima de cada lbum. Renombrar la cancin j-sima del lbum Z. Mostrar el lbum con ms duracin en todas sus canciones.

11. Sea el Sindicato de transporte El Dorado que posee buses y estos buses posee chofer y pasajeros (como se muestra en la siguiente diagrama) realice: a. b. c. d. e. Identifique las relaciones que existen entre cada clase como su cardinalidad, si existe. Mostrar todos los datos del bus que contenga al pasajero W. Mostrar el nombre del chofer quien lleva a ms pasajeros. Del bus cuyo destino es X, Eliminar al pasajero R. El bus que tenga menos de 10 pasajeros reasignar otro chofer.

12

Universidad Mayor de San Andrs Facultad de Ciencias Puras y Naturales Carrera de Informtica

Algoritmos y Programacin INF-121 Gestin II/2011

12. Sea un vector que guarda vectores de objetos de tipo punto como se muestra a continuacin:

(2,3) a) b) c) d)

(0,2)

(2,1)

(3,5)

(11,1)

(2,8)

Se pide realizar el diagrama UML e instanciar. Mostrar los puntos que sumados den el nmero x Eliminar si existe el punto (x,y) Asignar el valor 0 a todos los nmeros primos.

13. Sea un artista que posee un conjunto de lbumes y cada lbum posee un conjunto de canciones.

a) b) c) d)

Eliminar la cancin con menos duracin de todos los lbumes. Mostrar el i-simo lbum con ms duracin. Renombrara la cancin j-sima del lbum Z. Eliminar la(s) cancin(es) con nombre X.

GENERICIDAD (PLANTILLAS)
13

Universidad Mayor de San Andrs Facultad de Ciencias Puras y Naturales Carrera de Informtica

Algoritmos y Programacin INF-121 Gestin II/2011

1.

Utilizando plantillas: Realizar el Diagrama de Clases y hallar el mnimo de un vector de Matrices, los mismos pueden ser enteros, doubls, float, char. Escribir la plantilla de clase y realizar el Diagrama de clases para la clase vector de matrices de n filas

2.

3.

4.

a. Establecer un constructor que llene aleatoriamente las matrices. b. Mostrar la matriz que tenga ms elementos. Sea un vector que almacena vectores de nmeros, caracteres o cadenas. a. Ordenar los elementos del vector de acuerdo a la cantidad de elementos. b. Eliminar el i-simo elemento de cada vector. Utilizando plantillas de clases cargar una matriz cuadrada, se pide: a. Intercambiar la primera fila con la i-sima. b. Llevar la i-sima fila a la primera.

EXCEPCIONES
1. 2. 3. 4. Disear la clase vector para vectores de tamao n, escribir un mtodo para sumar 2 vectores y utilice manejo de excepciones para controlar la dimensin de los vectores. Realiza un programa orientado a objetos que permita multiplicar matrices. Manejar todos los posibles errores por medio de excepciones. Escribir un mtodo que lea valores de un vector y cuando se trate de leer en una posicin inexistente lance una excepcin que indique: ndice fuera de rango. Resolver la ecuacin cuadrtica + + = y manejar todos los posibles errores por medio de excepciones.

PERSISTENCIA DE OBJETOS (ARCHIVOS)


1. Disear el Archivo Agenda de Direcciones cuyos registros constan de los siguientes campos: Nombre, Direccin, Ciudad, Correo, Telfono, Edad. a. Realizar los mtodos: Adicionar, Eliminar, Modificar. Sea el archivo Libro(Cod_lib, titulo, Autor, Edicion, Anio) a. Eliminar todos los libros que sean inferiores del ao 1985. b. Los libros con autor Annimo cambiarlos por Sin Nombre.

2.

14

Universidad Mayor de San Andrs Facultad de Ciencias Puras y Naturales Carrera de Informtica

Algoritmos y Programacin INF-121 Gestin II/2011

3.

Sea la estructura de archivos:


ARTICULO (cod_articulo, descripcin, stock, precio_uni) VENTA (cod_articulo, ci_cliente, fecha, cantidad, precioTotal) CLIENTE (ci, nombre, direccion)

4.

a. Realizar el diagrama de clases. b. Realizar una venta s que existe el stock necesario. c. Aumentar el stock del artculo ms vendido. d. Mostrar a los Clientes que ms veces aparecen en el archivo Ventas. e. Mostrar los atributos del artculo y del cliente cuya venta haya sido la ms cara. Sean los siguientes archivos: ALUMNO (Nombre, cod_alum, cel, dir) MATERIA (sigla, nom_mat) HABILITACION (cod_al, sigla) Se pide: a. Cree los archivos y llnelos.

b. Liste las materias habilitadas de un alumno X (donde X es el nombre). c. Muestre de una Materia Z (donde z es el nombre de una materia), cuantos alumnbos
estn habilitados.

15

Anda mungkin juga menyukai