Como faço um programa, em Java, que quando eu inserir o valor de um terreno ele me mostre a quantidade de cerâmicas necessárias para cobrir essa área?
Um exemplo simples:
import javax.swing.JOptionPane;
import java.text.DecimalFormat;
public class Cobertura {
private double areaContrapiso = 0.00;
private double medidaComprimentoCeramica = 0.00;
private double medidaAlturaCeramica = 0.00;
public void setAreaContrapiso(double areaContrapiso){
this.areaContrapiso = areaContrapiso;
}
public double getAreaContrapiso(){
return areaContrapiso;
}
public void setMedidaComprimentoCeramica(double comprimento){
this.medidaComprimentoCeramica = comprimento;
}
public double getMedidaComprimentoCeramica(){
return medidaComprimentoCeramica;
}
public void setMedidaAlturaCeramicaa(double altura){
this.medidaAlturaCeramica = altura;
}
public double getMedidaAlturaCeramica(){
return medidaAlturaCeramica;
}
private void lerDados(){
String area = null;
String comprimento = null;
String altura = null;
area = JOptionPane.showInputDialog(null, "Área (m2):", "Área a ser Coberta",
JOptionPane.PLAIN_MESSAGE);
comprimento = JOptionPane.showInputDialog(null, "Comprimento (cm):", "Cerâmica",
JOptionPane.PLAIN_MESSAGE);
altura = JOptionPane.showInputDialog(null, "Altura (cm):", "Cerâmica", JOptionPane.PLAIN_MESSAGE);
if(area != null && !area.isEmpty())
setAreaContrapiso(Double.parseDouble(area));
if(comprimento != null && !comprimento.isEmpty())
setMedidaComprimentoCeramica(Double.parseDouble(comprimento));
if(altura != null && !altura.isEmpty())
setMedidaAlturaCeramicaa(Double.parseDouble(altura));
}
private double calcularAreaCeramica(){
if(getMedidaComprimentoCeramica() > 0.00 && getMedidaAlturaCeramica() > 0.00){
double comprimentoEmMetro = getMedidaComprimentoCeramica() / 100;
double alturaEmMetro = getMedidaAlturaCeramica() / 100;
return comprimentoEmMetro * alturaEmMetro;
}else
return 0.00;
}
private double calcularQuantidadeCeramica(){
double areaCeramica = calcularAreaCeramica();
if(getAreaContrapiso() > 0.00 && areaCeramica > 0.00)
return getAreaContrapiso() / areaCeramica;
return 0.00;
}
private void exibirResultado(){
DecimalFormat df = new DecimalFormat("###,###,###.00");
double resultado = calcularQuantidadeCeramica();
JOptionPane.showMessageDialog(
null, ("Quantidade de cerâmicas: " + df.format(Math.round(resultado))),
"Resultado", JOptionPane.PLAIN_MESSAGE
);
}
public static void main(String[] args){
Cobertura cobertura = new Cobertura();
cobertura.lerDados();
cobertura.exibirResultado();
}
}



