CALCULAR PERIMETRO, ÁREA DE FIGURAS Programa Universidad Tecnológica del Valle de Toluca Programando Java CALCULAR PERIMETRO, ÁREA DE FIGURAS INDICE Objetivos: ...................................................................................................................................... 2 Códigos: ..................................................................................................................................... 2 Capturas de Pantalla: ..................................................................................................................... 7 1 CALCULAR PERIMETRO, ÁREA DE FIGURAS Objetivos: Creamos un programa en la cual nos permitirá sacar el área y su perímetro de las figuras disponibles en el menú usando herencia para ahorrar código y variables para volver a escribir, usando el JoptionPane como entrada por teclado Códigos: Figuras.java package figuras; import javax.swing.JOptionPane;//libreria para mandar mensajes con formulario public class Figuras { public static void main(String[] args) { int opcion; // variable opcion entero String v1; // variable v1 cadena do{ // ciclo do v1=JOptionPane.showInputDialog("***Elige una opción*** \n 1. Trapecio \n 2. Rombo \n 3. Círculo \n 4. Cuadrado \n 5. Rectángulo \n 6.Triángulor \n 7. Salir"); // el menu que va a mostrar en pantalla en formulario opcion=Integer.parseInt(v1); // lo que digite el usuario se almacena en opción if(opcion<7) // sentencia if que compara que no sea menor a 7 { switch (opcion){ // ciclo del switch que compara la opcion que digite el usuario y lo compara con el caso que haya dado case 1: FigurasGeometricas trapecio=new trapecio();//Instancia que hace con figurasgeometricas.java y lo almacena en trapecio trapecio.recibir();// método recibir trapecio.perimetro();//método perimetro trapecio.area();//método area break; case 2: FigurasGeometricas rombo=new rombo();//Instancia que hace con figuras geométricas.java y lo almacena en rombo rombo.recibir(); rombo.perimetro(); rombo.area(); break; case 3: FigurasGeometricas circulo=new circulo();//Instancia que hace con figuras geométricas.java y lo almacena en circulo circulo.recibir(); circulo.perimetro(); circulo.area(); break; case 4: FigurasGeometricas cuadrado=new cuadrado();//Instancia que hace con figuras geométricas.java y lo almacena en cuadrado cuadrado.recibir(); cuadrado.perimetro(); cuadrado.area(); 2 CALCULAR PERIMETRO, ÁREA DE FIGURAS break; case 5: FigurasGeometricas rectangulo=new rectangulo();//Instancia que hace con figuras geométricas.java y lo almacena en rombo rectangulo.recibir(); rectangulo.perimetro(); rectangulo.area(); break; case 6: FigurasGeometricas triangulo=new triangulo();//Instancia que hace con figuras geométricas.java y lo almacena en rombo triangulo.recibir(); triangulo.perimetro(); triangulo.area(); break; } } else { break; } } while(opcion<7); } } 3 CALCULAR PERIMETRO, ÁREA DE FIGURAS FigurasGeometricas.java package figuras; import javax.swing.JOptionPane; //Libreria para mandar mensajes con formulario public class FigurasGeometricas { public int basemayor; //variable public int basemenor; //variable public int diagonalmayor; //variable public int diagonalmenor; //variable public int lado; //variable public int base; //variable public int altura; //variable public String v1; //variable public String v2; //variable public double r; //variable public int radio; //variable public void perimetro()//método perímetro hereditable { System.out.println("Perimétro de la clase padre"); } public void area()//método perímetro hereditable { System.out.println("Área de la clase padre"); } public void recibir(){}//método perímetro hereditable } class trapecio extends FigurasGeometricas{ //subclase trapecio public void recibir(){//método heredado del padre figuras geometricas v1=JOptionPane.showInputDialog("Introduce base mayor: "); //formulario que introduzcas la base mayor basemenor=Integer.parseInt(v1); //La almacena en basemenor v2=JOptionPane.showInputDialog("Introduce base menor: "); //Formulario que introduzcas la base menor basemayor=Integer.parseInt(v2); //La almacena en basemayor v2=JOptionPane.showInputDialog("Introduce altura: "); //Formulario que introduzcas la altura altura=Integer.parseInt(v2); //La almacena en altura } public void perimetro(){//Metodo heredado de perimetro r=basemenor+basemayor+altura; //operación que la guarda en r JOptionPane.showMessageDialog(null,"El perimetro es="+r,"",JOptionPane.INFORMATION_MESSAGE); //muestra el resultado en mensaje } public void area()//Metodo heredado de area { r=((basemenor+basemayor)*altura)/2; //operacion que la guarda en r JOptionPane.showMessageDialog(null,"El área es="+r,"",JOptionPane.INFORMATION_MESSAGE); } } 4 CALCULAR PERIMETRO, ÁREA DE FIGURAS class rombo extends FigurasGeometricas{ //subclase rombo public void recibir(){ v1=JOptionPane.showInputDialog("Introduce diagonal mayor: diagonalmayor=Integer.parseInt(v1); v2=JOptionPane.showInputDialog("Introduce diagonal menor: diagonalmenor=Integer.parseInt(v2); } public void perimetro(){ r=(diagonalmayor*2)+(diagonalmenor*2); JOptionPane.showMessageDialog(null,"El perimetro es="+r,"",JOptionPane.INFORMATION_MESSAGE); } public void area() { r=(diagonalmayor+diagonalmenor)/2; JOptionPane.showMessageDialog(null,"El área es="+r,"",JOptionPane.INFORMATION_MESSAGE); } } class circulo extends FigurasGeometricas{ public void recibir(){ v1=JOptionPane.showInputDialog("Introduce radio: radio=Integer.parseInt(v1); } public void perimetro(){ r=3.1416*(radio*2); JOptionPane.showMessageDialog(null,"El perimetro es="+r,"",JOptionPane.INFORMATION_MESSAGE); } public void area() { r=3.1416*(radio*radio); JOptionPane.showMessageDialog(null,"El área es="+r,"",JOptionPane.INFORMATION_MESSAGE); } } class cuadrado extends FigurasGeometricas{ public void recibir(){ v1=JOptionPane.showInputDialog("Introduce lado: lado=Integer.parseInt(v1); } public void perimetro(){ r=lado*4; JOptionPane.showMessageDialog(null,"El perimetro es="+r,"",JOptionPane.INFORMATION_MESSAGE); } public void area() { r=lado*lado; JOptionPane.showMessageDialog(null,"El área es="+r,"",JOptionPane.INFORMATION_MESSAGE); 5 "); "); "); "); CALCULAR PERIMETRO, ÁREA DE FIGURAS } } class rectangulo extends FigurasGeometricas{ //subclase rectangulo public void recibir(){ v1=JOptionPane.showInputDialog("Introduce Base: "); base=Integer.parseInt(v1); v2=JOptionPane.showInputDialog("Introduce Altura: altura=Integer.parseInt(v2); } public void perimetro(){ r=base+base+altura+altura; JOptionPane.showMessageDialog(null,"El perimetro es="+r,"",JOptionPane.INFORMATION_MESSAGE); } public void area() { r=base*altura; JOptionPane.showMessageDialog(null,"El área es="+r,"",JOptionPane.INFORMATION_MESSAGE); } } class triangulo extends FigurasGeometricas{ public void recibir(){ v1=JOptionPane.showInputDialog("Introduce lado: lado=Integer.parseInt(v1); } public void perimetro(){ r=lado*3; JOptionPane.showMessageDialog(null,"El perimetro es="+r,"",JOptionPane.INFORMATION_MESSAGE); } public void area() { r=(lado*lado)/2; JOptionPane.showMessageDialog(null,"El área es="+r,"",JOptionPane.INFORMATION_MESSAGE); } } 6 "); "); CALCULAR PERIMETRO, ÁREA DE FIGURAS Capturas de Pantalla: Al ejecutar el programa: Muestra un menú en pantalla. Calcular Figura Seleccionada: La opción elegía en este ejemplo es la 4 (Cuadrado). 7 CALCULAR PERIMETRO, ÁREA DE FIGURAS Introducimos la medida de los lados: Ponemos cualquier número para representarlo como su medida de los lados en este caso le puse 23. Al darle enter: Nos imprime el perímetro del cuadrado. Al darle enter: Nos imprime el área del cuadrado. 8 CALCULAR PERIMETRO, ÁREA DE FIGURAS Al darle enter: Nos imprime de nuevo el menú para seleccionar y le damos 7 para salir. Mensaje después de haber dado enter: 9
© Copyright 2024