Instrutor Java HEngholmJr Apostila 2 de Exercícios - JAVA 1 - Implemente a classe Trapezio descrita a seguir. Trapezio -baseMaior: double -baseMenor: double -altura: double -solicitaAresta(String):double +solicitaDados() +imprimeArea() +imprimeDados() Utilize interface JOptionPane na classe; O método solicitaAresta() deve solicitar e retornar o valor da aresta, sem aceitar valores negativos. Neste caso, fornecer a mensagem: ‘Valor negativo nao e permitido!\nDigite novamente:’ Este método deve ser utilizado na hora de solicitar as bases menor e maior, além da altura e deve receber como parâmetro, as strings ‘base maior’, ‘base menor’ ou ‘altura’, dependendo do que estiver sendo solicitado. O método solicitaDados() deve solicitar as bases Maior e Menor, assim como a altura do trapézio, utilizando o método solicitaAresta() para tal. O método imprimeArea() deve mostrar a informação no formato Área do trapézio: xx O método mostraDados() deve ter a saída Dados do trapezio Base maior: xx Base menor: yy Altura: hh Área do trapézio: xx OBS: este método deve utilizar o método imprimeArea() para imprimir a última informação da saída de dados. Perguntas A classe possui membros de dados públicos? Em caso afirmativo, quantos? A classe possui funções membro do tipo público? Em caso afirmativo, quais? Qual a diferença entre membros de dados públicos(public) e privados(private)? Instrutor Java HEngholmJr 2 - Implemente um programa que utilize a classe Trapézio acima para armazenar e apresentar dados de um trapézio. 3 – De posse da classe Trapézio, das classes Circunferência e Triangulo, criadas a partir das definições da Apostila 01 de Exercícios do site, crie o package Trigonometria. 4 – Implemente um programa de Console TrigonometriaMain que utilize o package Trigonometria e ofereça as seguintes opções aos usuários: Programa de cálculos trigonométricos Selecione sua opção 1 2 3 4 – Área de uma circunferência – Área de um triângulo – Área de um trapézio - Sair Assim que o usuário selecionar sua opção, deverá ser solicitado os dados da figura trigonométrica e apresentado a seguir a área da figura. 5 – O programa abaixo possue 10 erros. Encontre-os e mostre uma maneira de corrigi-los. Programa de console com fonte no arquivo CircunferenciaMain.java import javax.swing.JOptionPane; public class CircunferenciaMain { public static void main(String[] args) { //Utilizando o construtor que nao recebe parametro JOptionPane.showMessageDialog(null, "Seno:"+Math.sin(0.52), "Mensagem de erro", JOptionPane.ERROR_MESSAGE); Circunferencia c; //Utilizando o construtor que recebe parametro Circunferencia a = new Circunferencia(); c.mostraDados(); a.mostraDados(); } } Classe Circunferência com fonte import javax.swing.JOptionPane; no arquivo Circunferencia.java public class Circunferencia{ //Construtores da classe public Circunferencia(double raio){ try{ this.raio = raio; Instrutor Java HEngholmJr } catch (java.lang.NumberFormatException e) { raio = -1; } } public Circunferencia(){ } //Metodo privado para uso interno da classe private double retornaArea(){ return Math.PI * raio * raio; } //Metodo <<acessor>> public void mostraDados() { JOptionPane.showMessageDialog(null, "Dados da circunferencia\nRaio:" + "\nArea:", "Dados da circunferencia", JOptionPane.INFORMATION_MESSAGE); } //Metodo <<mutator>> public void solicitaDados(){ double raio = -1; try{ raio = Double.parseDouble(JOptionPane.showInputDialog("Digite o raio da circunferencia:")); if(raio >=0) break; JOptionPane.showMessageDialog(null, "Valor negativo nao e permitido!\nDigite novamente!", "Mensagem de erro", JOptionPane.ERROR_MESSAGE); } catch () { // Catch any IO exceptions. JOptionPane.showMessageDialog("Na foi digitado valor valido!\nDigite novamente!", "Mensagem de erro", JOptionPane.ERROR_MESSAGE); } } this.raio = raio; } }