Ajuda com java - programa simples pra hoje, só preciso de correções

10 respostas
M

preciso fazer um programa que calcule a área e o perímetro de um quadrado pra hoje e não manjo nada, to na terceira ou quarta aula de programação, o professor provavelmente só vai aceitar se dividir em classe principal, quadrado e interface (que mostra uma janelinha que o cara bota um valor e depois dá os resultados)

mais ou menos assim

public class Principal
{
    public static void main (String[]p)
    {
        Interface umaInterface = new Interface();
        Quadrado umQuadrado = new Quadrado();
        
    }
}
public class Quadrado

{
    public double lado;
    public Quadrado()
    {
        
    }
    
}
import javax.swing.JOptionPane;
public class Interface

{
    public Interface()
    {
        
    }
    
}

não lembro como define os lados e manda os valores de uma classe pra outra e tal e o negócio é pra entregar hoje

10 Respostas

T

Boa sorte.

B

Você pode na classe quadrado, no parametro ja pedir para o usuário informar o valor do lado.

Quadradro(Double lado) { this.lado = lado; // Atribuindo o valor inserido ao atributo valor da classe quadrado }

E na classe quadrado, terás que ter um método calculaPerimitro() {} e uma método calculaArea() { }
que pegarão os valores fornecidos e farão os cálculos.

Aí quando instanciar eles na classe Principal, poderá chamar os métodos e imprimi-los ou algo do tipo.

bsl.lacerda

Pra refrescar a memória.
http://pessoal.sercomtel.com.br/matematica/geometria/geom-areas/geom-areas-poli.htm
Agora é só implementar!

Jeferson_Manetti

iaew amigo...
so uma coisa o forum e para esclarecer duvidas lembre-se disso ^^
la vai...

public class Principal  
    {  
        public static void main (String[]p)  
        {  
           FiguraGeometrica quadrado = new Quadrado(10,5);

           Sytem.out.println("Perimetro: " + quadrado.calculaPerimetro());
           // Saida = Perimetro: 30
           System.out.println("Area: " + quadrado.calculaArea());
           // Saida = Area: 50
              
        }  
   }
public interface FiguraGeometrica{

	double calculaPerimetro();

	double calculaArea();

}
public class Quadrado implements FiguraGeometrica{

	private double altura;
	
	private double largura;

       Public Quadrado(double altura, double largura){
         this.altura = altura;
         this.largura = largura;
       }
	
	public double calculaPerimetro(){
		return (altura * 2) + (largura * 2);
	}
	
	public double calculaArea(){
		return altura * largura;
	}


}
M

o que eu pretendo fazer

instanciar interface
fazer a interface dar um oi ou alguma coisa com o joptionpane
fazer a interface pedir um valor pro lado com o joptionpane tambem
mandar o lado pro principal
instanciar o quadrado com uma variavel desse valor lado
calcular a área e o perímetro no quadrado
mandar os valores área e perímetro pro principal que manda pra interface que mostra uma janelinha com os resultados
mandar a interface dar um tchau

o problema é fazer isso funcionar :lol:

opa não vi o post aí em cima vou dar uma olhada

M

fiz tudo errado aí só pra mostrar o que eu quero, é como a gente tem feito os programas em sala

public class Principal
{
	public static void main (String[]p)
	{
		Interface umaInterface = new Interface();
		umaInterface.darOi();
		umaInterface.pedirLado();
		Quadrado umQuadrado = new Quadrado(valor);
		umQuadrado.calcularArea();
		umQuadrado.calcularPerimetro();
		umaInterface.mostrarResultado(area, perimetro);
		umaInterface.darTchau();
		
		
	}
}
public class Quadrado

{
	public double lado;
	public Quadrado(double lado)
	{
		
	}
	
	public double calcularArea();
	{
		area = lado*lado;
		return area;
	}
	
	
	public double calcularPerimetro();
	{
		perimetro = lado*4;
		return perimetro;
	}
	
	
}
import javax.swing.JOptionPane; 

public class Interface

{
	public Interface()
	{
		
	}
	
	public void darOi()
	{
		JOptionPane.showMessage(null, "OI");
	}
	
	public double pedirLado()
	{
		JOptionPane.showInputDialog("LADO DO QUADRADO");
		return valor;
	}
	
	public void mostrarResultado(area, perimetro)
	{
		JOptionPane.showMessageDialog("ÁREA:area \n PERÍMETRO:perímetro");
	}
	
	public void darTchau()
	{
		JOptionPane.showMessage(null, "TCHAU");
	}
	
	
	
}
J-Chist

Quarta aula e já vendo JOptionPane?? Onde você estuda???

M

ufsc

Jeferson_Manetti

tai amigo tudo mastigadinho... pode ir na fe pq testei...

boa sorte com seu prof...

import javax.swing.*;

 public class Principal
 {
     public static void main (String[]p)
     {
         GUI gui = new GUI();

         gui.darOi();

         double valor = gui.pedirLado();

         Quadrado quadrado = new Quadrado(valor);

         gui.mostrarResultado(quadrado.calcularArea(), quadrado.calcularPerimetro());

         gui.darTchau();


     }
 }



 /******************************************************************/

    class Quadrado {

         private double lado;

         public Quadrado(double valor) {
			this.lado = valor;
         }

         public double calcularArea(){
            return lado * lado;
         }


         public double calcularPerimetro() {
            return lado * 4;
         }


   }

 /****************************************************************/



  class GUI {


      public void darOi() {
          JOptionPane.showMessageDialog(null, "OI...","Bem Vindo...",JOptionPane.PLAIN_MESSAGE);
      }

      public double pedirLado() {
		  double result = Double.parseDouble(JOptionPane.showInputDialog("LADO DO QUADRADO"));
          return result;
      }

      public void mostrarResultado(double area, double perimetro) {
          JOptionPane.showMessageDialog(null,
          			"ÁREA:" + area +"\n PERÍMETRO: " + perimetro,
          			"Resultado",
          			JOptionPane.PLAIN_MESSAGE);
      }

      public void darTchau() {
          JOptionPane.showMessageDialog(null, "TCHAU","Fique com Deus",JOptionPane.PLAIN_MESSAGE);
      }



  }
T

Bom, se o Mafra resolver pedir mais uma questão mastigada, eu tranco o tópico. Só faltou pedir o catchup e mais alguns guardanapos.

Criado 16 de março de 2009
Ultima resposta 16 de mar. de 2009
Respostas 10
Participantes 6