Para esta Atividade 01, você irá desenvolver um programa na linguagem JAVA, utilizando a IDE NetBeans,

para calcular a área de diferentes formas geométricas, como por exemplo: retângulo e triângulo. 1 - Crie uma classe abstrata denominada de "Poligono", 1.1 - Nesta classe, deverá ter um atributo para guardar a quantidade de lados e, um método para imprimir a quantidade de lados da forma. 1.2 - Na sequência, ainda dentro da classe Poligono, você deverá criar um método abstrato para calcular a área. 2 - Crie as subclasses Triangulo e Retangulo, 2.1 - Em ambas as classes, implemente o método de calcular a área de acordo com a forma. 2.2 - Em ambas as classes, devem ter atributos para o cálculo da área (como medida do lado ou altura). Deve haver uma forma de definir esses atributos, usando a classe Scanner. 2.3 - Ainda nas subclasses, implemente o método imprimir, neste deverá ser impresso qual é a forma, a quantidade de lados, o seu respectivo tamanho, bem como o resultado do cálculo da área. 3 - Crie uma classe Principal para gerenciar a interação. Ao terminar a sua atividade, lembre-se de exportar seu projeto no formato .zip e envie o seu código pelo sistema Studeo. Para exportar no NetBeans, siga os passos: Arquivo > Exportar Projeto > Para ZIP

1 Resposta

  • Felipe

    package atividade;

    import java.util.Scanner;

    public class Atividade {

       

       public static void main(String[] args) {

           int opcao = 0;

           double l1 = 0;

           double l2 = 0;

           double l3 = 0;

           do {

               System.out.println("0 - Sair");

               System.out.println("1 - Calcular Triângulo");

               System.out.println("2 - Calcular Retângulo");

               System.out.println("Digite uma opção: ");

               Scanner scan = new Scanner(System.in);  

               opcao = scan.nextInt();

               switch (opcao){

                   case 1: //Triângulo

                       try {

                           System.out.print("Digite a base(m): ");

                           l1 = scan.nextDouble();

                           System.out.print("Digite o cateto(m): ");

                           l2 = scan.nextDouble();

                           System.out.print("Digite o cateto oposto(m): ");

                           l3 = scan.nextDouble();  

                           Triangulo Obj = new Triangulo(l1, l2, l3);

                           Obj.Imprimir();

                       } catch (Exception e) {

                           System.out.println("Valor Incorreto! Reinicie o processo... ");

                       }

                       break;

                   case 2: //Retângulo

                       try {

                           System.out.print("Digite a altura(m): ");

                           l1 = scan.nextDouble();

                           System.out.print("Digite o largura(m): ");

                           l2 = scan.nextDouble();

                           Retangulo Obj = new Retangulo(l1, l2);

                           Obj.Imprimir();

                       } catch (Exception e) {

                           System.out.println("Valor Incorreto! Reinicie o processo... ");

                       }

                       break;

                   default: //Outros    

                       if (opcao != 0){

                           System.out.println("Opção Inválida!");

                       }

               }    

           } while (opcao != 0);

           System.out.println("Programa Encerrado!");

       }

    }

    package atividade;

    public abstract class Poligono {

       protected int lados;

       public void ImprimirLados(){

           System.out.println("Lados: " + this.lados);

       }

       public abstract double CalcularArea();

         

       public Poligono() {

           this(0);

       }

       

       public Poligono(int lados) {

           this.lados = lados;

       }

       

       public int getLados() {

           return lados;

       }

       public void setLados(int lados) {

           this.lados = lados;

       }    

    }

    package atividade;

    public class Retangulo extends Poligono{

       private double l1;

       private double l2;

       

       public Retangulo(){

           this(0,0);

           this.lados = 4;

       }

       public Retangulo(double l1, double l2) {

           this.l1 = l1;

           this.l2 = l2;

           this.lados = 4;

       }

       public void Imprimir(){

           System.out.println(" Informações do Objeto...");

           System.out.println("Forma: Retângulo");

           this.ImprimirLados();

           System.out.println("Tamanho: " + this.l1 + " x " + this.l2 + " m ");

           System.out.println("Área: " + this.CalcularArea() + " m2 ");

       }

           

       @Override

       public double CalcularArea() {

           return l1 * l2;

       }

       public double getL1() {

           return l1;

       }

       public void setL1(double l1) {

           this.l1 = l1;

       }

       public double getL2() {

           return l2;

       }

       public void setL2(double l2) {

           this.l2 = l2;

       }

    }

    package atividade;

    public class Triangulo extends Poligono{

       private double l1;

       private double l2;

       private double l3;

       public Triangulo(){

           this(0,0,0);

           this.lados = 3;

       }

       public Triangulo(double l1, double l2, double l3) {

           this.l1 = l1;

           this.l2 = l2;

           this.l3 = l3;

           this.lados = 3;

       }

       

       public void Imprimir(){

           System.out.println(" Informações do Objeto...");

           System.out.println("Forma: Triângulo");

           this.ImprimirLados();

           System.out.println("Tamanho: " + this.l1 + " x " + this.l2 + " x " + this.l3 + " m ");

           System.out.println("Área: " + this.CalcularArea() + " m2 ");

       }

       @Override

       public double CalcularArea() {

           //Fórmula de Heron - qualquer tipo de triângulo

           double p = (l1 + l2 + l3) / 2;

           double r = p * (p - l1) * (p - l2) * (p - l3);

           double s = Math.sqrt(r);

           return s;

       }

       public double getL1() {

           return l1;

       }

       public void setL1(double l1) {

           this.l1 = l1;

       }

       public double getL2() {

           return l2;

       }

       public void setL2(double l2) {

           this.l2 = l2;

       }

       public double getL3() {

           return l3;

       }

       public void setL3(double l3) {

           this.l3 = l3;

       }

    }

Clique aqui para adicionar a sua resposta.