calcular perimetro, área de figuras

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