Java Object-Oriented Programming: Quadrado, Piramide, and Cubo

Classified in Computers

Written on in English with a size of 3.24 KB

Java Geometric Shapes Implementation

abstract class Quadrado {
private float lado;

public Quadrado ()
{this.lado = 0;}

public Quadrado (float lado)
{this.lado = lado;}

public float getLado ()
{return (this.lado);}

public void setLado (float lado)
{this.lado = lado;}

double area ()
{return Math.pow (this.lado,2);}

double perimetro ()
{return 4 * this.lado;}

void mostrarDados ()
{System.out.println ("Quadrado com lado " + this.lado);
System.out.println ("Area = " + this.area ());
System.out.println ("Perimetro = " + this.perimetro());
}
}

class Piramide extends Quadrado {
private float altura;

public Piramide ()
{super (0);
this.altura = 0;}

public Piramide (float lado, float altura)
{super (lado);
this.altura = altura;}

public void setAltura (float altura)
{this.altura = altura;}

public float getAltura ()
{return (this.altura);}

double perimetro ()
{return (0);}

public float alturaLado ()
{return (float) Math.sqrt ( ( Math.pow ( this.getLado () / (float) 2,2) + Math.pow (this.altura,2)));}

public float areaLateral ()
{return ( 4 * (this.getLado () * this.alturaLado () / (float) 2));}

double area ()
{return super.area () + this.areaLateral ();}

double volume ()
{return super.area () * this.altura / 3;}



void mostrarDados ()
{System.out.println ("Piramide ");
System.out.println ("Lado " + this.getLado ());
System.out.println ("Altura " + this.getAltura ());
System.out.println ("Area Base = " + super.area ());
System.out.println ("Perimetro da base = " + super.perimetro());
System.out.println ("Altura do lado = " + this.alturaLado ());
System.out.println ("Area Lateral = " + this.areaLateral ());
System.out.println ("Area = " + this.area ());
System.out.println ("Volume = " + this.volume());
}
}

class Cubo extends Quadrado {

public Cubo ()
{super (0);}

public Cubo (float lado)
{super (lado);}

double area ()
{return 6 * super.area ();}

double perimetro ()
{return (0);}

double volume ()
{return super.area () * this.getLado();}

void mostrarDados ()
{System.out.println ("Cubo com lado " + this.getLado ());
System.out.println ("\nArea = " + this.area ());
System.out.println ("\nVolume = " + this.volume());
}
}



//import jutil.*;

class LerPiramide
{

public static void main(String[] args) throws Exception
{ Piramide p = new Piramide (0,0);
System.out.println ("Dados da Piramide");
System.out.print ("\nInforme o lado -> ");
p.setLado (JUtil.readFloat ());
while (p.getLado () != 0)
{ System.out.print ("\nInforme a Altura -> ");
p.setAltura(JUtil.readFloat ());
p.mostrarDados ();
System.out.print ("\nInforme o lado -> ");
p.setLado (JUtil.readFloat ());
}
}
}

Related entries: