Buscar

Cálculo da Área em Java(Orientação a objetos básica, Entrada e saída de Dados com JOptionPane e Object[]

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

Circulo.java
package Area.Perimetro;
public class Circulo {
	float raio;
	double pi = 3.14;
	
	
	public Circulo( float r) { //Construtor com um parâmetro
		raio = r;
	}
	
	float calculaArea() {
		float area = (float) (pi * (raio*raio)); //Método com retorno para calcular área do círculo
		return area;
	}
	float calculaPerimetro() {
		float perimetro = (float) (2*pi*raio); //Método com retorno para calcular perímetro círculo
		return perimetro;
	}
	
	
}
Principal.java
package Area.Perimetro;
import javax.swing.JOptionPane;
public class Principal{
	public static void main(String[] args){
	
	 //Varíavel para validar o laço de repeticão
		int op;
		
		//Criando referência de cada polígono
		Triangulo t;
		Quadrado q;
		Circulo c;
		Retangulo r;
				
		do {	
					
			Object [] elementos = {"Triângulo","Quadrado","Círculo","Retângulo"};//Armazenando os polígonos no Object[] calc
			String escolha = String.valueOf(JOptionPane.showInputDialog( //String.valueOf para converter de Object[] para String
				null, null, "Escolha o polígono", JOptionPane.QUESTION_MESSAGE, null,//Parâmetros mensagem, tipo de mesagem
				elementos, elementos[0])); //Parâmetros do Object[] e qual Object[] será iniciado na caixa de diálogo
			 //Escolhendo o poligono atraves do object[] elementos
			
		 //Se a escolha for o Triângulo
				if( escolha == elementos[0]) {	
					Object[] calc = {"Área","Perimetro"};//Armazenando area e perimetro no Object[] calc				
					String operacao = String.valueOf(JOptionPane.showInputDialog(//String.valueOf para converter de Object[] para String
							null, null, "Escolha a opção", JOptionPane.QUESTION_MESSAGE, null, //Parâmetros mensagem, tipo de mesagem
							calc, calc[0]));//Parâmetros do Object[] e qual Object[] será iniciado na caixa de diálogo
						
						//se a escolha for a Área
						if(operacao == calc[0]) { 					
							String strBase = JOptionPane.showInputDialog( null, "Informe a base","Base",JOptionPane.QUESTION_MESSAGE);
 //(null, mensagem ,título, tipo de mensagem) 
							String strAltura = JOptionPane.showInputDialog(null,"Informe a altura","Altura",JOptionPane.QUESTION_MESSAGE);							
							float fBase = Float.parseFloat(strBase);//conversão de string para float da base
							float fAltura = Float.parseFloat(strAltura);//conversão de string para float da altura			
							t = new Triangulo(fBase,fAltura );//Instanciando objeto
							float area = t.calculaArea();//Calculando a Área através do método calculaArea() da classe Triangulo						
							String mensagem = "Área do Triângulo de Base: "+t.base+ " e Altura: "//Armazenando dados em uma string
									+ t.altura+"\nÉ igual a: "+area ;		
							JOptionPane.showMessageDialog(null, mensagem,"Resultado",JOptionPane.INFORMATION_MESSAGE);
						}				
						//Se a escolha for o Perímetro
						if(operacao == calc[1]) {
							 											//(null, mensagem ,título, tipo de mensagem)
							String strBase = JOptionPane.showInputDialog( null,"Informe o valor do lado","Lado",JOptionPane.QUESTION_MESSAGE);
							float fBase = Float.parseFloat(strBase);//Conversão de string para float da base
							t = new Triangulo(fBase, fBase);//Instanciando objeto							
							float perimetro = t.calculaPerimetro();//Calculando a Perímetro através do método calculaPerimetro() da classe Triangulo											
							JOptionPane.showMessageDialog(null,"Triângulo com Perímetro igual a: "+perimetro,"Resultado",JOptionPane.INFORMATION_MESSAGE);	
						}		
				}
	
				 //Se a escolha for o Quadrado
				if( escolha == elementos[1]) {					
					Object[] calc1 = {"Área","Perimetro",}; //Armazenando area e perimetro no Object[] calc1			
					String operacao = String.valueOf(JOptionPane.showInputDialog( //String.valueOf para converter de Object[] para String
							null, null, "Escolha a opção", JOptionPane.QUESTION_MESSAGE, null, //Parâmetros mensagem, tipo de mesagem
							calc1, calc1[0]));//Parâmetros do Object[] e qual Object[] será iniciado na caixa de diálogo
					
					//se a escolha for a Área
					 	if(operacao == calc1[0]) { 					
					 		String strLado = JOptionPane.showInputDialog(null,"Informe o valor do lado","Lado",JOptionPane.QUESTION_MESSAGE);									 	
					 		float fLado = Float.parseFloat(strLado);//conversão de string para float do lado					 	
					 		q = new Quadrado(fLado);//Instanciando objeto			
					 		float area = q.calculaArea();//Calculando a Área através do método calculaArea() da classe Quadrado		
					 		String mensagem = "Área do Quadrado de lado: " +q.lado+ 
							"\n É igual a: " +area;		 //Armazenando dados em uma string
					 		JOptionPane.showMessageDialog(null, mensagem,"Resultado",JOptionPane.INFORMATION_MESSAGE);
					 	}
					//Se a escolha for o Perímetro
					 	if(operacao == calc1[1]) { 						 
					 		String strLado = JOptionPane.showInputDialog(null,"Informe o valor do lado","Lado",JOptionPane.QUESTION_MESSAGE);						 					 	
							float fLado = Float.parseFloat(strLado);//Conversão de string para float do lado
							q = new Quadrado(fLado);//Instanciando objeto
							float perimetro = q.calculaPerimetro();//Calculando o Perímetro através do método calculaArea() da classe Quadrado
							JOptionPane.showMessageDialog(null,"Quadrado com Perímetro igual a: "+perimetro,"Resultado",JOptionPane.INFORMATION_MESSAGE ); 						 
					 	}
				}				
				//Se a escolha for o Círculo
				if( escolha == elementos[2]) {					
					Object[] calc2 = {"Área","Perímetro"};//armazenando area e perimetro no Object[] calc2
					String operacao = String.valueOf(JOptionPane.showInputDialog( //String.valueOf para converter de Object[] para String
							null, null, "Escolha a opção", JOptionPane.QUESTION_MESSAGE, null, //Parâmetros mensagem, tipo de mesagem
							calc2, calc2[0]));//Parâmetros do Object[] e qual Object[] será iniciado na caixa de diálogo
					
						//se a escolha for a Área
					 	if(operacao == calc2[0]) { 
					 		String strraio = JOptionPane.showInputDialog(null,"Informe o valor do raio","Raio",JOptionPane.QUESTION_MESSAGE);
					 		//conversão de string para float
					 		float fraio = Float.parseFloat(strraio);					 
					 		c = new Circulo(fraio);//Instanciando objeto
					 		float area = c.calculaArea();//Calculando área através do método calculaArea() da classe Circulo
					 		String mensagem = "Área do Circulo de raio: " +c.raio+"\n É igual a: " +area;//armazenando dados em uma string
					 		JOptionPane.showMessageDialog(null, mensagem,"Resultado",JOptionPane.INFORMATION_MESSAGE );
					 	}
					 	//se a escolha for o perímetro
					 	if(operacao == calc2[1]) {
					 		String strraio = JOptionPane.showInputDialog(null,"Informe o valor do raio","Raio",JOptionPane.QUESTION_MESSAGE);					 		
					 		float fraio = Float.parseFloat(strraio);//conversão de string para float					 		
					 		c = new Circulo(fraio);//Instanciando objeto
					 		float perimetro = c.calculaPerimetro();//Calculando a Perímetro através do método calculaArea() da classe Circulo
					 		String mensagem = "Círculo com Perímetro igual a: " +perimetro;
					 		JOptionPane.showMessageDialog(null, mensagem,"Resultado",JOptionPane.INFORMATION_MESSAGE);						 						 									 						 
					 	}	
				}
				//se a escolha for o Retângulo
				if( escolha == elementos[3]) {					
					Object[] calc3 = {"Área","Perímetro"};//armazenando area e perimetro no Object[] calc3
					String operacao1 = String.valueOf(JOptionPane.showInputDialog(
							null, null, "Escolha a opção", JOptionPane.QUESTION_MESSAGE, null,
							calc3, calc3[0]));
							
							//se a escolha for a Área
						 if(operacao1 == calc3[0]) { 
							 String strBase = JOptionPane.showInputDialog( null, "Informe a base","Base",JOptionPane.QUESTION_MESSAGE);
							 String strAltura = JOptionPane.showInputDialog(null,"Informe
a altura","Altura",JOptionPane.QUESTION_MESSAGE);
							 //conversão de string para float
							 float fBase = Float.parseFloat(strBase);
							 float fAltura = Float.parseFloat(strAltura);
							 //Instanciando objeto
							 r = new Retangulo(fBase,fAltura);
							 float area = r.CalculaArea();//Calculando a Área através do método calculaArea() da classe Retangulo
							 String mensagem = "Área do retangulo de Base: "+r.base+ " e Altura: "
										+ r.altura+"\nÉ igual a: "+area ;//armazenando dados em uma string
							 JOptionPane.showMessageDialog(null, mensagem,"Resultado",JOptionPane.INFORMATION_MESSAGE );
						 }
						 //se a escolha for o perímetro
						 if(operacao1 == calc3[1]) {
							 String strBase = JOptionPane.showInputDialog( null, "Informe a base","Base",JOptionPane.QUESTION_MESSAGE);
							 String strAltura = JOptionPane.showInputDialog(null,"Informe a altura","Altura",JOptionPane.QUESTION_MESSAGE);
						 //conversão de string para float
							 float fBase = Float.parseFloat(strBase);
							 float fAltura = Float.parseFloat(strAltura);
							//Instanciando objeto
							 r = new Retangulo(fBase,fAltura);
							 float perimetro = r.CalculaPerimetro();//Calculando a Perímetro através do método calculaArea() da classe Retangulo
							 String mensagem = "Retângulo com Perímetro igual a: " +perimetro;//armazenando dados em uma string
							 JOptionPane.showMessageDialog(null, mensagem,"Resultado",JOptionPane.INFORMATION_MESSAGE);						 						 									 						 
						 }		 					 					 	
				}				
			 op = JOptionPane.showConfirmDialog(null,"Deseja escolher novamente?");	
	 System.out.println( op );	
	 //enquanto a opção for sim o laço de repetição permaneçe verdadeiro
		}while(op == 0);		
	}
}
Quadrado.java
package Area.Perimetro;
public class Quadrado {
	float lado;
 
	public Quadrado( float l) {
		lado = l; //Construtor com um parâmetro
	}
	
	float calculaArea() {
		float area = (lado * lado); //Método com retorno para calcular área do quadrado
		return area;
	}
	float calculaPerimetro() {
		float perimetro = (4*lado); //Método com retorno para calcular perímetro do quadrado
		return perimetro;
	}
}
Retangulo.java
package Area.Perimetro;
public class Retangulo {
	float base,
		 altura;
	
	public Retangulo(float b, float a) {
		base = b; //Construtor com dois parâmetros
		altura = a;
	}
	
	float CalculaArea() {
		float area = base *altura; //Método com retorno para calcular área do retângulo
		return area;		
	}
	float CalculaPerimetro() {
		float perimetro = (2*base) +(2*altura); //Método com retorno para calcular perímetro do retângulo
		return perimetro;		
	}
	
	
}
Triangulo.java
package Area.Perimetro;
public class Triangulo {
	float base, 
	 altura;
	
	public Triangulo( float b, float a) {
		 base = b; //Construtor com dois parâmetros 
		 altura = a;
	}
	float calculaArea() {
		float area = (base * altura)/2; //Método com retorno para calcular área do triângulo
		return area;
	}
	
	float calculaPerimetro() {
		float perimetro = 3*base; //Método com retorno para calcular perímetro do triângulo
		return perimetro;
	}
	
}

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Continue navegando