Título: pero el código lo tengo fraccionado, como puedo compilarlos en uno solo
Publicado por: wjoa97 en 5 Julio 2017, 17:50 pm
Buenas soy nuevo aquí, y pues en mi universidad debo realizar el siguiente programa: En un puerto se alquilan amarres para barcos de distinto tipo. Para cada ALQUILER se guarda el nombre y DNI del cliente, las fechas inicial y final de alquiler, la posición del amarre y el barco que lo ocupará. Un BARCO se caracteriza por su matrícula, su eslora en metros y año de fabricación. Un alquiler se calcula multiplicando el número de días de ocupación (incluyendo los días inicial y final) por un módulo función de cada barco (obtenido simplemente multiplicando por 10 los metros de eslora) y por un valor fijo (2 e en la actualidad).
Sin embargo ahora se pretende diferenciar la información de algunos tipos de barcos:
· Número de mástiles para veleros
· Potencia en CV para embarcaciones deportivas a motor
· Potencia en CV y número de camarotes para yates de lujo
· El módulo de los barcos de un tipo especial se obtiene como el módulo normal más:
o El número de mástiles para veleros
o La potencia en CV para embarcaciones deportivas a motor
o La potencia en CV más el número de camarotes para yates de lujo
Utilizando la herencia de forma apropiada, diseñe el diagrama de clases y sus relaciones, con detalle de atributos y métodos necesarios. Programe en Java los métodos que permitan calcular el alquiler de cualquier tipo de barco
PD: debo usar interfaz gráfica, y si hay algún error en el código avisarmeEn fin, tengo el código, uso eclipse, pero el código lo tengo fraccionado en 7 blogs de notas quisiera saber como puedo compilarlos en uno solo aqui se los dejo porfa ayuda gracias ... Datos alquiler clientepackage Programa; import java.util.Calendar; import java.util.GregorianCalendar; public class Alquiler {
private GregorianCalendar fInicio, fFin; private int posicionAmarre; private Barco barco; private double precioAlquiler; private Cliente cliente;
public Alquiler(Cliente cliente, int diaInicio, int mesInicio, int añoInicio, int diaFin, int mesFin, int añoFin, int posicionAmarre, Barco barco) { this.cliente = cliente; fInicio = new GregorianCalendar(añoInicio, mesInicio, diaInicio); fFin = new GregorianCalendar(añoFin, mesFin, diaFin); this.posicionAmarre = posicionAmarre; this.barco = barco; precioAlquiler = 0.0; }
// Getters
public Cliente getCliente() { return cliente; } public String getfInicio() { // Muestra la fecha formateada: DD/MM/AA return fInicio.get(Calendar.DATE) + "/" + fInicio.get(Calendar.MONTH) + "/" + fInicio.get(Calendar.YEAR); }
public String getfFin() { // Muestra la fecha formateada: DD/MM/AA return fFin.get(Calendar.DATE) + "/" + fFin.get(Calendar.MONTH) + "/" + fFin.get(Calendar.YEAR); } public int getPosicionAmarre() { return posicionAmarre; }
public Barco getBarco() { return barco; }
public double getPrecioAlquiler() { return precioAlquiler; }
public void setCliente(Cliente cliente) { this.cliente = cliente; } public void setfInicio(int diaInicio, int mesInicio, int añoInicio) { fInicio = new GregorianCalendar(añoInicio, mesInicio, diaInicio); }
public void setfFin(int diaFin, int mesFin, int añoFin) { fFin = new GregorianCalendar(añoFin, mesFin, diaFin); }
public void setPosicionAmarre(int posicionAmarre) { this.posicionAmarre = posicionAmarre; }
public void setBarco(Barco barco) { this.barco = barco; } // Calcula la diferencia en dias entre dos fechas private long diasOcupados() { long aux = fFin.getTimeInMillis() - fInicio.getTimeInMillis(); long dias = aux / (1000 * 60 * 60 * 24); return dias; }
// Multiplica días de ocupación public void calculaPrecioAlquiler(Barco a) { // Dias ocupados * Precio del amarre según el tipo de barco * valor fijo precioAlquiler = diasOcupados() * a.calculaPrecioAmarre() + 2; }
public String toString() { return "***** Alquiler ******" + "\nNombre: " + cliente.getNombre() + " | DNI: " + cliente.getDni() + " | Teléfono: " + cliente.getTelefono() + "\nFecha de inicio: " + getfInicio() + " | Fecha de fin: " + getfFin() + "\nPosicion de amarre: " + posicionAmarre + " | Barco: " + barco.getMatricula(); }
} Datos barco matricula, eslora, año de fabrucacionpublic class Barco {
private String matricula; private int eslora; private GregorianCalendar añoFabricacion; private double precioAmarre;
public Barco(String matricula, int eslora, int añoFabricacion) { this.matricula = matricula; this.eslora = eslora; this.añoFabricacion = new GregorianCalendar(añoFabricacion, 12, 31); precioAmarre = 0.0; }
public String getMatricula() { return matricula; }
public int getEslora() { return eslora; }
public int getAñoFabricacion() { return añoFabricacion.get(Calendar.YEAR); }
public void setMatricula(String matricula) { this.matricula = matricula; }
public void setEslora(int eslora) { this.eslora = eslora; }
public void setAñoFabricacion(int añoFabricacion) { this.añoFabricacion = new GregorianCalendar(añoFabricacion, 12, 31); }
public void impuestoTipoBarco(double precioAmarre) { this.precioAmarre = this.precioAmarre + precioAmarre; }
public double calculaPrecioAmarre() { precioAmarre = eslora * 10; return precioAmarre; } public String toString() { return "***** Barco ******\n" + "Matrícula: " + matricula + " | Metros de eslora: " + eslora + "\nAño de fabricación: " + getAñoFabricacion(); }
} Datos Bote deportivopublic class Deportivo extends Barco {
private int potencia;
public Deportivo(int potencia, String matricula, int eslora, int añoFabricacion) { super(matricula, eslora, añoFabricacion); this.potencia = potencia; }
public int getPotencia() { return potencia; }
public void setPotencia(int potencia) { this.potencia = potencia; }
public double calculaPrecioAmarre() { return super.calculaPrecioAmarre() + potencia * 1; }
public String toString() { return "***** Deportivo a motor *****\n" + "Matrícula: " + super.getMatricula() + " | Metros de eslora: " + super.getEslora() + "\nAño de fabricación: " + getAñoFabricacion() + " | Potencia: " + potencia + "CV"; } } Datos Bote veleropublic class Velero extends Barco {
private int numeroMastiles;
public Velero(int numeroMastiles, String matricula, int eslora, int añoFabricacion) { super(matricula, eslora, añoFabricacion); this.numeroMastiles = numeroMastiles; }
public int getNumeroMastiles() { return numeroMastiles; }
public void setNumeroMastiles(int numeroMastiles) { this.numeroMastiles = numeroMastiles; }
public double calculaPrecioAmarre() { return super.calculaPrecioAmarre() + numeroMastiles * 5; } public String toString() { return "****** Velero ******\n" + "Matrícula: " + super.getMatricula() + " | Metros de eslora: " + super.getEslora() + "\nAño de fabricación: " + getAñoFabricacion() + " | Mastiles: " + numeroMastiles; } } Datos Bote Yate Lujosopublic class Yate extends Deportivo {
private int camarotes;
public Yate(int camarotes, int potencia, String matricula, int eslora, int añoFabricacion) { super(potencia, matricula, eslora, añoFabricacion); this.camarotes = camarotes; }
public int getCamarotes() { return camarotes; }
public void setCamarotes(int camarotes) { this.camarotes = camarotes; }
public double calculaPrecioAmarre() { return super.calculaPrecioAmarre() + camarotes * 20; }
public String toString() { return "***** Yate de lujo *****\n" + "Matrícula: " + super.getMatricula() + " | Metros de eslora: " + super.getEslora() + "\nAño de fabricación: " + getAñoFabricacion() + " | Potencia: " + super.getPotencia() + "CV" + " | Camarotes: " + camarotes; } } Datos clientepublic class Cliente { private String nombre, dni; private long telefono;
public Cliente(String nombre, String dni, long telefono) { this.nombre = nombre; this.dni = dni; this.telefono = telefono; }
public String getNombre() { return nombre; }
public String getDni() { return dni; }
public long getTelefono() { return telefono; }
public void setNombre(String nombre) { this.nombre = nombre; }
public void setDni(String dni) { this.dni = dni; }
public void setTelefono(long telefono) { this.telefono = telefono; } } Funcion principalpublic class RunAmarres {
public static void main(String[] args) { Barco titanic = new Deportivo(500, "1565-FHD", 8, 2003); Cliente gerardo = new Cliente("Gerardo", "18088821-B", 63453673);
Alquiler alquilerGerardo = new Alquiler(gerardo, 23, 5, 2015, 29, 5, 2015, 23, titanic);
System.out.println(alquilerGerardo.toString() + "\n");
System.out.println(titanic.toString());
alquilerGerardo.calculaPrecioAlquiler(titanic); System.out.println("\n----------------------------------------------");
System.out.printf("Precio del amarre: %.2f€\n", titanic.calculaPrecioAmarre()); System.out.printf("Precio del alquiler: %.2f€\n", alquilerGerardo.getPrecioAlquiler()); } } Ayuda porfavor, estoy un poco frustrado con esto.. gracias · No se debe escribir en mayúsculas >aquí las reglas del foro (http://foro.elhacker.net/reglas.htm) -Engel Lex
Título: Re: dudas graves java
Publicado por: LaThortilla (Effort) en 27 Julio 2017, 20:56 pm
No sabes como conpilarlo :huh: :huh: :huh: :huh:
|