import java.util.Scanner;
public class Triangulo
{
public static void main(String args[])
{
Scanner teclado = new Scanner(System.in);
System.out.println("Propiedades de un triangulo");
System.out.print("lado a: ");
double a = teclado.nextDouble();
System.out.print("lado b: ");
double b = teclado.nextDouble();
System.out.print("lado c: ");
double c = teclado.nextDouble();
if ( a > 0 && b > 0 && c > 0 )
{
if ( c < a + b && c > Math.abs(b - a) )
{
double perimetro = a + b + c;
System.out.println("Perimetro: " + perimetro);
double s = perimetro / 2;
double area = Math.sqrt(s * (s - a) * (s - b) * (s - c));
System.out.println("Area: " + area);
if ( a == b && b == c )
System.out.println("Triangulo equilatero");
else if ( a == b || b == c || a == c )
System.out.println("Triangulo isoceles");
else
System.out.println("Triangulo escaleno");
// Opcional: Clasificar de acuerdo a los angulos
// Obtener la hipotenusa, los catetos, y sus cuadrados
double hh = a, c1 = b, c2 = c;
if ( a > b && a > c ) { hh = a; c1 = b; c2 = c; }
if ( b > a && b > c ) { hh = b; c1 = a; c2 = c; }
if ( c > a && c > b ) { hh = c; c1 = a; c2 = b; }
double HH = hh * hh, C1 = c1 * c1, C2 = c2 * c2;
if ( HH == C1 + C2 )
System.out.println("Triangulo rectangulo");
else if ( HH > C1 + C2 )
System.out.println("Triangulo obtusangulo");
else
System.out.println("Triangulo acutangulo");
}
else
System.err.println("Los lados no determinan un triangulo");
}
else
System.err.println("Un triangulo no puede tener lados de longitud negativa o nula");
}
}
Comentarios sobre la versión: 20130122 (0)
No hay comentarios