• Lenguaje

    Java usando Scanner

  • Descripción

    Dados tres datos enteros positivos, que representen las longitudes de un posible triángulo, determine si los datos corresponden a un triángulo. En caso afirmativo, escriba si el triángulo es equilátero, isósceles o escaleno. Calcule además su área.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import java.util.Scanner;

public class AreaYTipoDeTriangulo {

    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        double area, lado_a, lado_b, lado_c, semiperimetro;
        System.out.print("Ingresa el valor de lado a: ");
        lado_a = in.nextDouble();
        in.nextLine();
        System.out.print("Ingresa el valor de lado b: ");
        lado_b = in.nextDouble();
        in.nextLine();
        System.out.print("Ingresa el valor de lado c: ");
        lado_c = in.nextDouble();
        in.nextLine();
        semiperimetro=0;
        area=0;
        if(lado_a+lado_b>lado_c&&lado_b+lado_c>lado_a&&lado_c+lado_a>lado_b)
        {
            System.out.println("Los datos corresponden a un tri\u00E1ngulo.");
            semiperimetro=(lado_a+lado_b+lado_c)/2;
            area=Math.sqrt(semiperimetro*(semiperimetro-lado_a)*(semiperimetro-lado_b)*(semiperimetro-lado_c));
        }
        else
            System.out.println("Los datos no corresponden a un tri\u00E1ngulo.");
        if(semiperimetro!=0&&lado_a==lado_b&&lado_b==lado_c)
            System.out.println("Tri\u00E1ngulo equil\u00E1tero.");
        if(semiperimetro!=0&&((lado_a==lado_b&&lado_b!=lado_c)||(lado_b==lado_c&&lado_c!=lado_a)||(lado_c==lado_a&&lado_a!=lado_b)))
            System.out.println("Tri\u00E1ngulo is\u00F3sceles.");
        if(semiperimetro!=0&&lado_a!=lado_b&&lado_b!=lado_c&&lado_c!=lado_a)
            System.out.println("Tri\u00E1ngulo escaleno.");
        System.out.println("Valor de area: " + area);
        System.out.println("Valor de semiperimetro: " + semiperimetro);
    }

}