Logo Studenta

TP 1 - MIT - PROGRAMACIÓN AVANZADA - Manuel Tenedor

¡Estudia con miles de materiales!

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

Continuar navegando