Pessoal estou começando a programar em JAVA, então comecei lendo a apostila Caelum Java Objetos FJ11, eu li ate o Capitulo 4 quando decidi fazer um programa Orientado a Objetos que calcula a área do Circulo, Quadrado, Retângulo e Triangulo.
Então eu vou postar o código aqui para vocês avaliarem e darem sugestões sobre a organização do código e tals.
package CalculaArea;
import java.util.Scanner;
class CalculaArea {
public static void main(String args[]) {
Scanner entrada = new Scanner(System.in);
Menu menu = new Menu();
int opc2;
do {
menu.Principal();
int opc = entrada.nextInt();
switch (opc) {
case 1 : menu.Circulo();
break;
case 2 : menu.Triangulo();
break;
case 3 : menu.Retangulo();
break;
case 4 : menu.Triangulo();
break;
}
System.out.println ("Deseja voltar para o Menu Principal? 1.Sim / 2.Não");
opc2 = entrada.nextInt();
} while (opc2 == 1);
}
}
package CalculaArea;
import java.util.Scanner;
public class Menu {
Scanner entrada = new Scanner(System.in);
Area area = new Area();
void Principal () {
System.out.println ("Calcula Area OOP by Gnomo");
System.out.println ("1 - Area do Circulo");
System.out.println ("2 - Area do Quadrado");
System.out.println ("3 - Area do Retangulo");
System.out.println ("4 - Area do Triângulo Retângulo");
}
void Circulo() {
System.out.println ("Digite o valor de PI: ");
double pi = entrada.nextDouble();
System.out.println ("Digite o RAIO: ");
double raio = entrada.nextDouble();
area.Circulo(pi,raio);
}
void Quadrado() {
System.out.println ("Digite o valor do lado do quadrado: ");
double lado = entrada.nextDouble();
area.Quadrado(lado);
}
void Retangulo() {
System.out.println ("Digite o valor da base: ");
double base = entrada.nextDouble();
System.out.println ("Digite o valor da altura: ");
double altura = entrada.nextDouble();
area.Retangulo(base,altura);
}
void Triangulo() {
System.out.println ("Digite o valor da base: ");
double base = entrada.nextDouble();
System.out.println ("Digite o valor da altura");
double altura = entrada.nextDouble();
area.Triangulo(base, altura);
}
}
package CalculaArea;
public class Area {
private double areaCirculo;
private double areaQuadrado;
private double areaRetangulo;
private double areaTriangulo;
void Circulo(double pi, double raio) {
this.areaCirculo = pi * raio * 2;
System.out.println ("A area do circulo é: " + this.areaCirculo);
}
void Quadrado(double lado) {
this.areaQuadrado = lado * lado;
System.out.println ("A area do quadrado é: " + this.areaQuadrado);
}
void Retangulo(double base, double altura) {
this.areaRetangulo = base * altura;
System.out.println ("A area do retangulo é: " + this.areaRetangulo);
}
void Triangulo(double base, double altura) {
this.areaTriangulo = (base * altura)/2;
System.out.println ("A area do triangulo é: " + this.areaTriangulo);
}
}