Ajuda com expressao booleana!

3 respostas
Maicon_Henrrique

To fazendo esse exercicio :

  1. Faça um programa que receba 3 valores que representarão os lados de um triângulo e verifique se os
    valores formam um triângulo e classifique esse triângulo como:
  • eqüilátero (3 lados iguais);
  • isósceles (2 lados iguais);
  • escaleno (3 lados diferentes).

Entao fiz seguinte codigo

import java.util.Scanner;
public class Exercicio6 {

	
	
	public static void main(String[] args) {
		Scanner read = new Scanner(System.in);
		int lado1,lado2,lado3;
		System.out.print ("Digite o primeiro valor:");
		lado1 = read.nextInt();
		System.out.print ("Digite o segundo valor:");
		lado2 = read.nextInt();
		System.out.print ("Digite o terceiro valor:");
		lado3 = read.nextInt();
		if (lado1 == lado2 && lado1 == lado3){
			System.out.println ("O triangulo é Equilatero!");
		}
		if (lado1 == lado2 && lado1 != lado3 || lado1 == lado3 && lado1 != lado2 || lado1 != lado2 && lado1 != lado3 && lado2 == lado3) {
			System.out.println ("O triangulo é Isoceles!");
		
		}
		if (lado1 != lado2 && lado1 != lado3 && lado2 != lado3) {
			System.out.println ("O triangulo é Escaleno!");
		}
		System.out.println ("");
		System.out.println ("Final da Execução.");
		
		
		

	}

}

Voces experientes, teria alguma modo de simplificar o codigo?
Com alguma biblioteca, metodo seila…
Desculpe a ignorancia

Obrigado

3 Respostas

R

o switch poderia ajudar mas vc vai aprender isso ainda…

use else pra simplificar

if (lado1 == lado2 && lado1 == lado3){  
            System.out.println ("O triangulo é Equilatero!");  
        }else if ( lado1 != lado2 && lado1 != lado3 && lado2 != lado3) {  
            System.out.println ("O triangulo é Escaleno!");  
          
        }else{  
            System.out.println ("O triangulo é Isoceles!");  
        }
RafaelCassau

Só uma dica amigo, antes de verificar qual o tipo de triangulo é, seria necessario verificar se os parametros passados formam um triangulo, pois se não formar um triangulo você não precisa realizar as outras estruturas de decisão, e tente usar o else para que não seje necessario testar todos os ifs mesmo que ja tenha obitdo um resultado, isso otimiza muito seu código, abraços!

MeloBr

O código faltou verificar se os valores realmente estão formando um triângulo, de resto use o código que te passaram acima, que ta perfeito.

Abraço !
Bruno Giannella de Melo.

Criado 3 de julho de 2011
Ultima resposta 3 de jul. de 2011
Respostas 3
Participantes 4