Unidad 4: Diseño de tipos

Anuncio
FUNDAMENTOS DE PROGRAMACIÓN
UNIDAD DIDÁCTICA 4: DISEÑO DE TIPOS. EJERCICIOS
Curso: 2010/11
Versión: 1.0.1
Dados los tipos siguientes, diseña sus interfaces y las clases que los implementan. Reutiliza en lo
posible los tipos creados anteriormente.
PuntoMétrico extiende Punto
Métodos:
distanciaAlOrigen, devuelve real.
distancia a otro punto, devuelve real.
Pixel extiende a Punto
Propiedades:
Color, entero, consultable y modificable.
Orden natural: por el punto y a igualdad de éste por el color.
Criterio de Igualdad: si tienen las mismas coordenadas X e Y y el mismo color.
Representación como cadena: coordenadas X e Y separadas por comas y entre
paréntesis, seguidas del color entre corchetes.
Círculo
Propiedades:
Centro, Punto, consultable y modificable.
Radio, real positivo, consultable y modificable.
Orden natural: por el centro y a igualdad de éste por el radio.
Criterio de Igualdad: si tienen el mismo centro y el mismo radio.
Representación como cadena: Centro y Radio separados por comas y entre paréntesis.
PotenciaEntera
Propiedades:
Base, Entero positivo, consultable y modificable.
Exponente, Entero positivo, consultable y modificable.
Orden natural: por el valor que tenga.
Criterio de Igualdad: si tienen la misma base y el mismo exponente.
Representación como cadena: base y exponente separados por comas entre paréntesis.
Métodos:
Valor, devuelve un entero que es su valor.
Racional
Propiedades:
Numerador, Entero, consultable y modificable.
Denominador, Entero distinto de cero, consultable y modificable.
Orden natural: el usual entre racionales.
Criterio de Igualdad: el usual entre racionales.
Representación como cadena: numerador y denominador separados por /. Si el
denominador es 1 no aparecerá / ni el denominador.
Métodos:
FUNDAMENTOS DE PROGRAMACIÓN
Curso: 2010/11
UNIDAD DIDÁCTICA 4: DISEÑO DE TIPOS. EJERCICIOS
Versión: 1.0.1
suma otro racional, devuelve void.
resta otro racional, devuelve void.
multiplica otro racional, devuelve void.
divide otro racional, devuelve void.
simplifica, devuelve void.
estáSimplificado, devuelve boolean.
valor, devuelve real.
Nota: buscar un algoritmo para el máximo común divisor.
Complejo
Propiedades:
ParteReal, real, consultable y modificable.
ParteImaginaria, real, consultable y modificable.
Orden natural: no tiene.
Criterio de Igualdad: si tienen la misma parte real e imaginaria.
Representación como cadena: parte real seguida por ‘+’, la parte imaginaria y una ‘i’. Si
la parte real o imaginaria son cero no deben aparecer.
Métodos:
suma otro complejo, devuelve void.
resta otro complejo, devuelve void.
multiplica otro complejo, devuelve void.
divide otro complejo, devuelve void.
conjugado, devuelve void.
esImaginarioPuro, devuelve boolean.
esReal, devuelve boolean.
modulo, devuelve real.
argumento, devuelve real.
Fecha
Propiedades:
Día, entero entre 1 y 31 inclusive, solo consultable.
Mes, entero entre 1 y 12 inclusive, solo consultable.
Año, entero mayor que 1900, solo consultable.
Orden natural: el usual entre fechas.
Criterio de Igualdad: si tienen el mismo día, mes y año.
Representación como cadena: Día, Mes y Año separados por comas y entre corchetes.
Debe tener un constructor que tome una hilera de caracteres como parámetro.
Métodos:
Es bisiesto determina si el mes de febrero deberá tener 29 días.
Anterior modifica la fecha al día anterior.
Siguiente modifica la fecha al día siguiente.
Nota: Utilizar la estructura switch para controlar el número de días válidos.
Descargar