Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
PROGRAMACIÓN AVANZADA Ingeniería industrial TRABAJO PRÁCTICO N°1: Problemas Implementarios de Java Valdiviezo, Melisa Rocío Estudiante de Ingeniería Industrial Profesor: Fabian Castillo Facultad de Ingeniería Universidad Nacional de Jujuy 2019 Programación Avanzada – Fabian Castillo – Facultad de Ingeniería – UNJu - 2019 pág. 2 PROBLEMA 1 PERSONA Implementar una clase llamada Persona con las siguientes características: Atributos: Nombre, Año de Nacimiento, DNI, Sexo, Peso y Altura Valores por defecto: • El DNI es un valor obligatorio, no posee valor por defecto. • El nombre por defecto es N y el apellido es N. Acorde a lo anterior se deben crear los constructores. Con DNI. La responsabilidad de la clase es la siguiente: • Métodos get, set de cada parámetro, excepto de DNI. • Cálculo del índice de masa Corporal. Una persona sabe calcular cuál es su índice de masa corporal el cual es peso / (altura*altura)2 • Saber si está en forma. Está en forma si el índice de masa corporal se encuentra entre 18 y 25 (esto es solo un ejemplo para probar la funcionalidad). • Saber si es mayor de edad. Una persona es mayor de edad si es mayor de 18 años • Saber si puede votar. Es necesario ser mayor de 16 años. • Mostrar toda la información del objeto. Es decir devolver un String con la información del mismo. DESARROLLO PROGRAMA PRINCIPAL INICIO //INICIO DE LA CLASE public class Inicio { public static void main(String[] args) { // TODO Auto-generated method stub //cuando instancio un objeto se ejecuta un constructor, al objeto con set asigno, asigno al atributo altura 1,8 Persona oPersona = new Persona (39879851,"Melisa","Valdiviezo"); //instanciamos el objeto //USO DE LOS METODOS SET Y GET oPersona.setNacimiento (1997); oPersona.setAltura(1.69); oPersona.setPeso(69); oPersona.setSexo("Femenino"); //DEVOLVER LOS DATOS INGRESADOS recupero los valores, los muestro por pantalla System.out.println("Nombre: " + oPersona.getNombre()); System.out.println("Apellido: " + oPersona.getApellido()); System.out.println("DNI " + oPersona.getDNI()); Programación Avanzada – Fabian Castillo – Facultad de Ingeniería – UNJu - 2019 pág. 3 //MOSTRAR EN PANTALLA LOS VALORES Y VERIFICACIONES System.out.println("Indice de Masa Corporal " + oPersona.CalculaIndice()); System.out.println(oPersona.VerificaForma()); System.out.println(oPersona.VerificaMayorEdad()); System.out.println(oPersona.VerificaSiVota()); //muestro por la pantalla el nombre, el objeto persona GET trae el nombre, GET sirve para traer información //ejecuta el metodo objeto persona calcula el imc y lo mismo hago con verifica forma }//Fin del programa principal }//Find de la clase CLASE PERSONA //IMPORTAR LIBRERIA import java.util.Calendar; //importamos de esa libreria el calendario, el objeto fecha devuelve el año del sistema, el año que tiene la computadora //INICIO DE CLASE public class Persona { //DECLARO LAS VARIABLES private int DNI;//DNI del objeto private String nombre;//Nombre del objeto, tipo cadena private String apellido; private String sexo; private int nacimiento; private double peso; private double altura; private double indice; private String forma; //CONSTRUCTOR public Persona(int DNI, String nombre, String apellido) { super(); this.DNI = DNI; this.nombre = nombre; this.apellido = apellido; //dni porque no quiero que se modifique }//FIN DE CONSTRUCTOR //GET AND SET public int getDNI() { return DNI; } public void setDNI(int DNI) { this.DNI= DNI; Programación Avanzada – Fabian Castillo – Facultad de Ingeniería – UNJu - 2019 pág. 4 } public String getNombre() { return nombre; } public void setNombre(String nombre) { this.nombre = nombre; } public String getApellido() { return apellido; } public void setApellido(String apellido) { this.apellido = apellido; } public String getSexo() { return sexo; } public void setSexo(String sexo) { this.sexo = sexo; } public int getNacimiento() { return nacimiento; } public void setNacimiento(int nacimiento) { this.nacimiento = nacimiento; } public double getPeso() { return peso; } public void setPeso(double peso) { this.peso = peso; } public double getAltura() { return altura; } public void setAltura(double altura) { this.altura = altura; } public double getIndice() { return indice; } public void setIndice(double indice) { this.indice = indice; } public String getForma() { return forma; } public void setForma(String forma) { this.forma = forma; } //CALCULA EL ÍNDICE DE MASA CORPORAL public double CalculaIndice () {//a indice le asigno lo de atributo peso dividido altura al cuadrado indice = peso/(altura*altura); return (indice); Programación Avanzada – Fabian Castillo – Facultad de Ingeniería – UNJu - 2019 pág. 5 } //VERIFICAR SI LA PERSONA ESTÁ EN FORMA public String VerificaForma() { //si lo que me devuelve calcula indice y es if ((CalculaIndice()>18)&&(CalculaIndice()<=25)) //GET recupero lo que tiene el atributo, el set asigna valor al apellido { forma = ("Esta en forma"); } if (CalculaIndice()>=25) { forma = "Debe hacer dieta"; } return (forma); } //VERIFICA SI LA PERSONA ES MAYOR DE EDAD public String VerificaMayorEdad() {//toma del sistema el año actual, se pone al principio de la clase Calendar fecha=Calendar.getInstance(); int año = fecha.get(Calendar.YEAR); //a la variaable año le voy a asignar el año que tiene el objeto fecha if ((año-nacimiento)>=18) { return ("Es mayor de 18 años"); } else { return ("No es mayor de 18 años"); } } //VERIFICA SI LA PERSONA VOTA public String VerificaSiVota() { Calendar fecha = Calendar.getInstance(); int año = fecha.get(Calendar.YEAR); if((año-nacimiento)>=16) { return ("Puede votar"); } else { return ("No puede Votar"); } } }//CIERRE DE LA CLASE Programación Avanzada – Fabian Castillo – Facultad de Ingeniería – UNJu - 2019 pág. 6 PROBLEMA 2 ELECTRODOMÉSTICOS Crear una clase Electrodoméstico con las siguientes características: Atributos son código, nombre, precio base, color, consumo energético y peso. Implementar todos el constructor: • El código y el nombre son campos obligatorios La funcionalidad de la clase es la siguiente: • Todos los métodos get y set. • Comprobar si el electrodoméstico es de bajo consumo (menor que 45 KW) • Calcular el balance, el mismo es el resultado de dividir el costo por el peso • Indicar si un producto es de alta gama, el balance es mayor que 3 • Mostrar toda la información del producto DESARROLLO PROGRAMA PRINCIPAL INICIO_ELECTRODOMESTICO //INICIO DE LA programa public class Inicio_Electrodomestico { // TODO Auto-generated method stub public static void main(String[] args) { //INSTANCIO EL OBJETO Electrodomestico electrodomestico = new Electrodomestico ("licuadora" , "violeta" , 2055,0,0,0); //USO MÉTODOS SET Y GET electrodomestico.setPrecio (2500); electrodomestico.setConsumoE(50); electrodomestico.setPeso(3); //DEVOLVER LOS DATOS INGRESADOS System.out.println("------------------------------------------"); System.out.println("INFORMACIÓN DEL ELECTRODOMÉSTICO"); System.out.println("Nombre: " + electrodomestico.getNombre()); System.out.println("Color: " + electrodomestico.getColorE()); System.out.println("Código: " + electrodomestico.getCodigo()); //MOSTRAR LOS DEMAS DATOS System.out.println("Precio: " + electrodomestico.getPrecio()); Programación Avanzada – Fabian Castillo – Facultad de Ingeniería – UNJu - 2019 pág. 7 System.out.println("Consumo: " + electrodomestico.getConsumoE());System.out.println("Peso: " + electrodomestico.getPeso()); //MOSTRAR EN PANTALLA LAS VERIFICACIONES System.out.println("------------------------------------------"); System.out.println("CONSUMO DEL ELECTRODOMÉSTICO"); System.out.println(electrodomestico.VerificaBajoConsumo()); System.out.println("------------------------------------------"); System.out.println("GAMA DEL ELECTRODOMÉSTICO"); System.out.println(electrodomestico.CalcularBalance()); }//Fin }//Fin del programa CLASE ELECTRODOMESTICO //CLASE ELECTRODOMESTICO public class Electrodomestico { //DECLARO LAS VARIABLES private String nombre; private String colorE; private long codigo; private float precio; private float consumoE; private float peso; //CONSTRUCTOR Y PARÁMETROS ASIGNADOS public Electrodomestico(String nombre, String colorE, long codigo, float precio, float consumoE, float peso) { super(); this.nombre = nombre; this.colorE = colorE; this.codigo = codigo; this.precio = precio; this.consumoE = consumoE; this.peso = peso; }//Fin del constructor //MÉTODO PARA MOSTRAR NOMBRE public String getNombre() { return nombre; } //MÉTODO PARA MODIFICAR NOMBRE public void setNombre(String nombre) { this.nombre = nombre; } //MÉTODO PARA MOSTRAR COLOR public String getColorE() { return colorE; } Programación Avanzada – Fabian Castillo – Facultad de Ingeniería – UNJu - 2019 pág. 8 //MÉTODO PARA MODIFICAR COLOR public void setColorE(String colorE) { this.colorE = colorE; } //MÉTODO PARA MOSTRAR CODIGO public long getCodigo() { return codigo; } //MÉTODO PARA MODIFICAR CODIGO public void setCodigo(long codigo) { this.codigo = codigo; } //MÉTODO PARA MOSTRAR PRECIO public float getPrecio() { return precio; } //MÉTODO PARA MODIFICAR PRECIO public void setPrecio(float precio) { this.precio = precio; } //MÉTODO PARA MOSTRAR CONSUMO public float getConsumoE() { return consumoE; } //MÉTODO PARA MODIFICAR CONSUMO public void setConsumoE(float consumoE) { this.consumoE = consumoE; } //MÉTODO PARA MOSTRAR PESO public float getPeso() { return peso; } //MÉTODO PARA MODIFICAR PESO public void setPeso(float peso) { this.peso = peso; } //COMPROBAR QUE EL ELECTRODOMESTICO SEA DE BAJO CONSUMO public String VerificaBajoConsumo() { if (consumoE>45) { return ("El electrodoméstico: " + nombre + ", no es de bajo consumo"); } else { return ("El electrodoméstico: " + nombre + ", ES DE BAJO CONSUMO"); } }//Fin de verificar //CALCULAR EL BALANCE public String CalcularBalance() { Float balance; balance = precio/peso; Programación Avanzada – Fabian Castillo – Facultad de Ingeniería – UNJu - 2019 pág. 9 if (balance > 3) { return ("El electrodoméstico es de ALTA GAMA, su balance es de: " + balance); } else { return ("El electrodoméstico NO es de alta gama, su balance es de: " + balance); } }//Fin calcular balance }//Fin de la clase
Compartir