BENEMERITA UNIVERSIDAD AUTONOMA DE PUEBLA FACULTAD DE CIENCIAS DE LA COMPUTACION
PROGRAMACIN II OTOO 2015
MANUAL 2 DE PRCTICAS DE LABORATORIO
Dr. Mario Rossainz Lpez 17 de Septiembre de 2015
1. Escriba un programa en JAVA que genere tablas de multiplicar mediante el uso de un
constructor al cual se le pase como parmetro el nmero de la tabla a generar. Una
tabla vlida ser cualquiera que est en un rango de 1 a 10; cualquier otro valor ser
invlido excepto el 0 que es con el cual terminar el programa.
2. Escribe un programa en Java que sobrecargue el clculo del promedio de n
calificaciones en la escala de 0 a 10 con dos mtodos: uno de clase y otro de instancia
y prueba la aplicacin generando su programa principal.
3. Un BufferSimple soporta las operaciones de lectura y escritura. Dicho BufferSimple
almacena un solo valor, de modo que un atributo suyo nos indica si est lleno o vaco.
Una operacin de escritura slo podr efectuarse cuando el BufferSimple est vaco,
mientras que las operaciones de lectura se ejecutan cuando haya un elemento
almacenado. Una lectura borra el contenido del BufferSimple y devuelve el valor de lo
que almacenaba justo antes. Escribe una clase en Java que genere objetos
BufferSimple tal y como se ha indicado que funciona. El BufferSimple ser genrico, es
decir, podr almacenar cualquier objeto.
4. Dada una clase Personas que contiene como atributos el sexo masculino o femenino,
nombre de pila y edad; implemente un programa en JAVA que muestre todas las
combinaciones posibles de parejas que pueden contraer matrimonio, con el requisito
de que ambas sean de distinto sexo y la diferencia de edad no supere los 10 aos.
5. Suponga que se quieren mostrar nmeros entre corchetes, con el siguiente formato:
[1] [2] [3] [4] [5], etc. Escriba un programa en JAVA que genere dicha serie mediante
objetos instanciados por una clase que defina dos mtodos sobrecargados, uno de
clase y otro de instancia que retornen una cadena con los nmeros de lnea desde 1
hasta cuantos en el formato antes mencionado, pero no debe mostrar ms de
longLinea caracteres en cada lnea. El modelo de la clase es el siguiente:
Si el usuario no da ningn dato correcto para longLinea se deber hacer uso del
segundo constructor quien pondr dicha variable a 1. En otro caso se utilizar el
primer constructor para crear el objeto. El programa deber tambin imprimir a
consola la serie de nmeros utilizando el mtodo esttico generaLinea().
6. Haciendo uso de la siguiente clase abstracta en JAVA:
public abstract class Speaker { public abstract String speak() }
a) Escribe el cdigo de las siguientes tres clases que hereden de la clase abstracta, as como la clase de prueba de la aplicacin: clase Persona, clase Perro, clase Gato
b) Escribe su correspondiente versin alternativa usando interfaces
7. Implemente las clases correspondientes para crear objetos fracciones y objetos
complejos de forma que hereden de una clase abstracta llamada Numeros. Esta clase
abstracta deber definir mtodos abstractos para hacer las operaciones de sumar,
restar, multiplicar y dividir dos nmeros (en este caso Fracciones o Complejos).
Implementar en un main() un arreglo abstracto, es decir de tipo Numeros y utilizarlo
para almacenar cualesquiera nmeros fracciones o complejos y llevar a cabo las
operaciones de forma genrica para mostrar el polimorfismo de los objetos.
Clase SerieNums
int cuantos, longLinea
public SerieNums(int cuantos, int longLinea)
public SerieNums(int cuantos)
public String generaLinea()
public static String generaLinea(int cuantos, int longLinea)
public static void main(String args[])
8. Implemente el siguiente diagrama de clases en un programa en JAVA de forma que se
muestre el uso del polimorfismo a travs de un arreglo de animales en el programa
principal.
9. Implementar una aplicacin en JAVA que maneje objetos polinomios en base al
siguiente modelo de clases:
Clase Termino
coeficiente
exponente
mostrarCoef()
mostrarExp()
Clase Polinomio
terminos[]
grado
mostrarCoef()
mostrarExp()
suma()
producto()
Interface Operaciones
suma()
producto()
Clase Termino: Clase que contendr objetos trmino y que sern los trminos de un
polinomio. Estar formada por dos variables de instancia (coeficiente y exponente)
que definirn el coeficiente y el exponente de un trmino de un polinomio; adems de
los mtodos de instancia mostrarCoef() y mostrarExp() que imprimirn a pantalla el
exponente y coeficiente de un determinado trmino de un polinomio.
Clase Polinomio: Esta clase heredar de la clase Termino para poder formar objetos
polinomios. Se definirn las variables de instancia terminos[] que ser un arreglo de
objetos trmino para definir el polinomio en base al tamao de este definido
mediante la variable de instancia grado. Heredar los mtodos de la clase trmino e
implementar los mtodos de suma() y producto() definidos en la Interface
Operaciones para sumar o multiplicar dos polinomios.
Interface Operaciones: Definir los mtodos abstractos suma() y producto() para que
sean implementados por la clases Polinomio.
10. Escribe una implementacin general en JAVA a manera de template (el cual compile
sin errores sintcticos), del siguiente diagrama de clases:
FECHA DE ENTREGA 16 de octubre de 2015
FORMA DE ENTREGA
Cdigo Fuente compilado, sin errores sintcticos y cdigo ejecutable en un CD rotulado con su nombre y matrcula. Cada programa deber estar almacenado en una carpeta independiente.
NOTA Podrn hacer y entregar los ejercicios de este manual en equipos de a lo ms 5 personas