carPooling.mundo

Iniciado por rams1288, 1 Junio 2017, 19:02 PM

0 Miembros y 1 Visitante están viendo este tema.

rams1288

hola buenas Tardes  elhaerNET, soy nuevo en foro y les pido un enorme favor que me ayuden con este proyecto de java....Explicación

el proyecto que tengo esta todo completo en el código JAVA en eclipse, pero me piden que a ese mismo proyecto crear un nuevo atributo el cual es el siguiente.

Informar cuántos conductores tienen un carro con modelo superior a determinado año.

Sobre este nuevo requerimiento se debe:
1. Analizar el requerimiento.
2. Descomponer el requerimiento en pasos. (Utilizar técnica de descomposición de requerimientos y del experto sobre el requerimiento.
3. Crear nuevo atributo
4. Desarrollar el contrato, signatura y cuerpo del método dar del atributo creado.
5. Desarrollar el contrato, signatura y cuerpo de cada uno de los métodos adicionales que requiere para cumplir con el nuevo requerimiento

con mas importancia ayudenme a resolver el 3 4 y 5

creo que es en esta clase Conductor donde hay que hacer lo que necesito,,,,

por favor Ayudenme..Muchas Gracias

Código (java) [Seleccionar]
/**
* Clase que representa a un conductor.
*/
public class Conductor
{

// -----------------------------------------------------------------
// Atributos
// -----------------------------------------------------------------

/**
* Nombre completo del conductor.
*/
private String nombre;

/**
* Cédula del conductor.
*/
private String cedula;

/**
* Placa del carro que maneja el conductor.
*/
private String placaCarro;

/**
* Modelo del carro que maneja el conductor.
*/
private String modeloCarro;

/**
* Ruta donde se encuentra la foto del conductor.
*/
private String rutaFoto;

/**
* Carrera actual del conductor.
*/
// TODO Parte 2 punto A: Declare el atributo carreraActual de tipo Carrera.
private Carrera carreraActual;

/**
* Representa la cantidad de asientos disponibles del carro.
*/
private int cantidadAsientosDisponibles;

// -------------------------------------------------------------
// Constructor
// -------------------------------------------------------------

/**
* Crea el conductor con los valores dados por parámetro. <br>
* <b> post: </b> El nombre, la cédula, la placa y el modelo del carro y la foto fueron inicializados con los valores dados por parámetro.<br>
* La carrera fue inicializada en null. <br>
* @param pNombre Nombre del conductor. pNombre != null && pNombre != "".
* @param pCedula Cédula del conductor. pCedula != "" && pCedula != null.
* @param pPlaca Placa del carro conductor. pPlaca != null && pPlaca != "".
* @param pModeloCarro Modelo del carro del conductor. pModeloCarro != null && pModeloCarro != "".
* @param pRutaFoto Ruta donde se encuentra la foto del conductor. pImagen != null && pImagen != "".
*/
public Conductor( String pNombre, String pCedula, String pPlaca, String pModeloCarro, String pRutaFoto, int pCantidadAsientos )
{
nombre = pNombre;
cedula = pCedula;
placaCarro = pPlaca;
modeloCarro = pModeloCarro;
rutaFoto = pRutaFoto;
// TODO Parte 2 punto B: Inicialice el atributo carreraActual según la documentación dada.
carreraActual = null;
cantidadAsientosDisponibles = pCantidadAsientos;
}

// -----------------------------------------------------------------
// Métodos
// -----------------------------------------------------------------

/**
* Retorna el nombre completo del conductor.
* @return Nombre del conductor.
*/
public String darNombre( )
{
return nombre;
}

/**
* Retorna la cédula del conductor.
* @return Cédula del conductor.
*/
public String darCedula( )
{
return cedula;
}

/**
* Retorna la placa del carro que maneja el conductor.
* @return Placa del carro que maneja el conductor.
*/
public String darPlacaCarro( )
{
return placaCarro;
}

/**
* Retorna el modelo del carro que maneja el conductor.
* @return Modelo del carro que maneja el conductor.
*/
public String darModeloCarro( )
{
return modeloCarro;
}

/**
* Retorna la ruta de la foto del conductor.
* @return Ruta de la foto del conductor.
*/
public String darRutaFoto( )
{
return rutaFoto;
}

/**
* Retorna la cantidad de asientos disponibles del carro del conductor.
* @return Cantidad de asientos disponibles en el carro del conductor.
*/
// TODO Parte 2, punto 4: Copie el contrato y la implementación.
public int darCantidadAsientosDisponibles( )
{
return cantidadAsientosDisponibles;
}

/**
* Retorna la carrera asignada al conductor.
* @return Carrera asignada al conductor.
*/
public Carrera darCarreraActual( )
{
return carreraActual;
}

/**
* Indica si el conductor está disponible.
* @return True si el conductor está disponible, false de lo contrario.
*/
public boolean estaDisponible( )
{
// TODO Parte 2 Punto C: Completar el método según la documentación dada.
if(carreraActual == null )
return true;
return false;
}

/**
* Asigna una carrera al conductor usando los datos recibidos por parámetro.<br>
* <b>post: </b> La carrera actual fue creada y asignada.
* @param pNombre Nombre del usuario. pNombre != null && pNombre != "".
* @param pTelefonoCelular Número de teléfono celular del usuario. pTelefonoCelular > 0.
* @param pMedioDePago Medio de pago del usuario. pMedioDePago pertenece{Carrera.PAGO_TARJETA, Carrera.PAGO_EFECTIVO}.
* @param pOrigen Origen de la carrera. pOrigen != null && pOrigen != "".
* @param pDestino Destino de la carrera. pDestino != null && pDestino != "".
* @param pCantidadPasajeros Cantidad de pasajeros de la carrera. pCantidadPasajeros > 0.
*/
public void asignarCarrera( String pNombre, int pTelefonoCelular, String pMedioDePago, String pOrigen, String pDestino, int pCantidadPasajeros )
{
carreraActual = new Carrera( pNombre, pTelefonoCelular, pMedioDePago, pOrigen, pDestino, pCantidadPasajeros );
}


// TODO Modifique el contrato del método según la implementación.
public void terminarCarrera( int pDuracion, double pDistancia ) throws Exception
{
// TODO Modificar método
if( estaDisponible() )
{
throw new Exception( "El conductor no tiene ninguna carrera asignada." );
}
carreraActual.terminarCarrera( pDuracion, pDistancia );
}

/**
* Calcula el costo adicional de la carrera teniendo en cuenta la tarifa de duración y la tarifa de distancia recibidas por parámetro.
* @param pTarifaDuracion Tarifa sobre la duración de la carrera a tener en cuenta. pTarifaDuracion > 0.
* @param pTarifaDistancia Tarifa sobre la distancia de la carrera a tener en cuenta. pTarifaDistancia > 0.
* @return Costo adicional de la carrera.
*/
public double calcularCostoAdicional( double pTarifaDuracion, double pTarifaDistancia )
{
return pTarifaDuracion * carreraActual.darDuracion( ) + pTarifaDistancia * carreraActual.darDistancia( );
}

/**
* Termina el servicio que tiene el conductor actualmente si la carrera ya terminó.<br>
* <b> pre: </b> El conductor tiene una carrera actual.<br>
* <b> post: </b> La carrera actual fue modificada a null.
* @return True si terminó el servicio, false si la carrera no estaba terminada.
*/
public boolean terminarServicio( )
{
// TODO Parte 2 Punto F: Complete el método según la información dada.
if (carreraActual.darEstado().equals(Carrera.TERMINADA))
{
carreraActual = null;
return true;
}
return false;
}

}


MOD: Etiqueta GeSHi.

3n31ch

Hola.
En este foro no se hacen tareas. Si tienes una duda puntual pregutala y con gusto te ayudaremos.

Tambien. Cuando pongas codigo utiliza las etiquetas GeSHi como lo indican las reglas del foro.