Hola Martín,
Entiendo tu duda sobre el uso de los operadores lógicos. Para verificar si tres lados pueden formar un triángulo, debes asegurarte de que se cumplan las tres condiciones siguientes al mismo tiempo:
- ( lado1 + lado2 > lado3 )
- ( lado1 + lado3 > lado2 )
- ( lado2 + lado3 > lado1 )
Estas condiciones aseguran que la suma de dos lados siempre sea mayor que el tercer lado, lo cual es necesario para formar un triángulo.
En tu código, estás utilizando el operador OR (||), lo cual significa que solo una de estas condiciones necesita ser verdadera para que el método esTriangulo()
devuelva verdadero. Sin embargo, para formar un triángulo, todas las condiciones deben ser verdaderas al mismo tiempo, por lo que deberías usar el operador AND (&&) en lugar de OR (||).
Aquí tienes cómo debería verse tu método esTriangulo()
:
public boolean esTriangulo() {
return (lado1 + lado2 > lado3) && (lado1 + lado3 > lado2) && (lado2 + lado3 > lado1);
}
Espero que esto aclare tu duda y te ayude a corregir el código. ¡Buenos estudios!
Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios!