Diseño de Clases y Métodos para la Gestión de Tareas, Contactos, Posiciones y Empleados
Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones
Escrito el en español con un tamaño de 6,99 KB
Diseño de Clases y Métodos
Clase Tarea
Descripción: Representa una tarea con su identificador, prioridad y vencimiento.
public class Tarea {
string identificador;
int prioridad;
int vencimiento;
public Tarea(string identificador);
public int GetPrioridad(); // Devuelve el valor del atributo prioridad
public Tarea Copy(); // Devuelve una copia del objeto
}
Clase ListaTareas
Descripción: Gestiona una lista de tareas.
Atributos:
numero
(int): Cantidad de tareas en la lista.tareas
(Tarea[]): Vector de objetosTarea
.
Métodos:
int GetNumero()
: Devuelve la cantidad de tareas en la lista.Tarea GetTarea(int posicion)
: Devuelve la tarea en la posición indicada. Devuelvenull
si la posición está fuera de rango.int AñadirTarea(Tarea tarea)
: Añade la tarea al final de la lista. Devuelve 0 si la operación es exitosa, -1 en caso contrario.ListaTareas GetTareasPorPrioridad(int prioridad)
: Devuelve otra lista con las tareas de una prioridad específica.int GetNumeroPorPrioridad(int prioridad)
: Devuelve el número de tareas con una prioridad determinada.
Clase Contacto
Descripción: Representa un contacto con su nombre, teléfono y estado en línea.
public class Contacto {
string nombre;
string telefono;
bool online;
public Contacto(string nombre, string telefono);
public string GetTelefono(); // Devuelve el valor del atributo telefono
public bool GetOnline(); // Devuelve el valor del atributo online
}
Clase ListaContactos
Descripción: Gestiona una lista de contactos.
Atributos:
numero
(int): Número de contactos en la lista.contactos
(Contacto[]): Vector de objetosContacto
.
Métodos:
int GetNumero()
: Devuelve el número de contactos en la lista.Contacto GetContacto(int posicion)
: Devuelve el contacto en la posición indicada. Devuelvenull
si la posición está fuera de rango.int SetContacto(Contacto contacto)
: Añade el contacto a la lista. Devuelve 0 si la operación es exitosa, -1 en caso contrario.Contacto GetContactoPorTelefono(string telefono)
: Devuelve el contacto con el teléfono indicado. Devuelvenull
si el teléfono no existe en la lista.ListaContactos GetContactosOnline()
: Devuelve una lista con los contactos que están en línea.
Clase Position
Descripción: Representa una posición geográfica con latitud, longitud y altitud.
public class Position {
double latitude;
double longitude;
double altitude;
public Position(double lat, double lon, double alt);
public double GetAltitude(); // Devuelve el valor de la altitud
public Position Clone(); // Devuelve una copia de la posición
}
Clase ListaPosiciones
Descripción: Gestiona una lista de posiciones geográficas.
Atributos:
numero
(int): Cantidad de posiciones en la lista.posiciones
(Position[]): Vector de objetosPosition
.
Métodos:
int GetNumero()
: Devuelve la cantidad de posiciones en la lista.Position GetPosicion(int i)
: Devuelve la posición en el índice i. Devuelvenull
si el índice está fuera de rango.int AñadirPosicion(Position posicion)
: Añade la posición al final de la lista. Devuelve 0 si la operación es exitosa, -1 en caso contrario.ListaPosiciones GetPosicionesPorAltura(double altura)
: Devuelve otra lista con las posiciones con una altitud superior a la indicada.int GetNumeroPorAltura(double altura)
: Devuelve el número de posiciones con una altitud superior a la indicada.
Clase Empleado
Descripción: Representa un empleado con su DNI, sueldo base y antigüedad.
public class Empleado {
string dni;
float sueldo_base;
int antiguedad;
public Empleado(string dni, float sueldo);
public string GetDni(); // Devuelve el valor del atributo dni
public void AumentarSueldo(float porcentaje); // Aumenta el sueldo base según el porcentaje
public void IncrementarAntiguedad(); // Incrementa la antigüedad en uno
}
Clase ListaEmpleados
Descripción: Gestiona una lista de empleados.
Atributos:
numero
(int): Número de empleados en la lista.empleados
(Empleado[]): Vector de objetosEmpleado
.
Métodos:
int GetNumero()
: Devuelve el número de empleados en la lista.Empleado GetEmpleado(int posicion)
: Devuelve el empleado en la posición indicada. Devuelvenull
si la posición está fuera de rango.void AumentarSueldo(float porcentaje)
: Aumenta el sueldo a todos los empleados según el porcentaje.int IncrementarAntiguedad(string dni)
: Incrementa la antigüedad del empleado con el DNI indicado. Devuelve 0 si la operación es exitosa, -1 si no se encuentra el DNI.
Clase Tarea (Proyecto)
Descripción: Representa una tarea de un proyecto con su descripción, responsable y estado.
public class Tarea {
string descripcion;
string responsable;
string estado;
public Tarea(string descripcion);
public void AsignarResponsable(string responsable); // Asigna el responsable a la tarea
public string GetEstado(); // Devuelve el estado de la tarea
}
Clase Proyecto
Descripción: Gestiona un proyecto con sus tareas.
Atributos:
numTareas
(int): Número de tareas en el proyecto.tareas
(Tarea[]): Vector de tareas (máximo 50).
Métodos:
int AñadirTarea(string descripcion)
: Crea y añade una nueva tarea al proyecto. Devuelve -1 si no hay espacio, 0 en caso contrario.int AsignarTarea(int i, string responsable)
: Asigna un responsable a la tarea en el índice i. Devuelve 0 si la operación es exitosa, -1 si el índice está fuera de rango.int TareasPendientes()
: Devuelve el número de tareas con estado "Completada".