Guest
Public paste!

Triángulos

By: a guest | Mar 20th, 2010 | Syntax: Java | Size: 2.22 KB | Hits: 103 | Expires: Never
Copy text to clipboard
  1. package pakSergioFadrique_Arrays_Corregidos;
  2.  
  3. import java.util.Scanner;
  4.  
  5. public class TipoTriangulos {
  6.         static Scanner teclado=new Scanner (System.in);
  7.        
  8.         public static void main(String[] args) {
  9.                 double a=leeLado(), b=leeLado(), c=leeLado();
  10.                 int tipo;
  11.                
  12.                 //Reorganizamos los lados
  13.                 if(a<b){
  14.                         double aux;
  15.                         aux=a;
  16.                         a=b;
  17.                         b=aux;
  18.                 }//En este punto, en el conjunto {a,b} en a esta el mayor
  19.                 if(a<c){
  20.                         double aux;
  21.                         aux=a;
  22.                         a=c;
  23.                         c=aux;
  24.                 }//En este punto, en el conjunto {a,b,c}, en a esta el mayor
  25.                 if(b<c){
  26.                         double aux;
  27.                         aux=b;
  28.                         b=c;
  29.                         c=aux;
  30.                 }//En este punto, a>b>c : Estan ordenandos.
  31.                
  32.                 tipo=tipo(a,b,c);
  33.                
  34.                 mostrar(a,b,c,tipo);
  35.         }
  36.        
  37. //funciones
  38.         static double leeLado(){
  39.                 System.out.println("Introduzca un lado: ");
  40.                 return teclado.nextDouble();
  41.         }
  42.        
  43.         static int tipo(double x, double y, double z){
  44.                 //Determina el tipo de triangulo
  45.                 int tipo;
  46.                 if(x>=(y+z))
  47.                         tipo=0;
  48.                 else{//Else 1
  49.                         if((x==y)&&(y==z))
  50.                                 tipo=3;
  51.                         else{//Else 2
  52.                                 if(x==y)
  53.                                         tipo=2;
  54.                                 else{//Else 3
  55.                                         if(y==z){
  56.                                                 tipo=2;
  57.                                                 tipo=resto(x,y,z,tipo);
  58.                                                 }
  59.                                         else{
  60.                                                 tipo=1;
  61.                                                 tipo=resto(x,y,z,tipo);
  62.                                                 }
  63.                                 }//else 3
  64.                         }//else 2      
  65.                 }//else 1
  66.                 return tipo;
  67.         }//Fin funcion de tipo.
  68.        
  69.         static int resto(double a, double b, double c, int tipo){
  70.                 if((Math.rint(Math.pow((Math.pow(b,2)+Math.pow(c, 2)),0.5)*10)/10==a)&&(tipo==1))
  71.                         tipo=4;
  72.                 else
  73.                         if((Math.rint(Math.pow((Math.pow(b,2)+Math.pow(c, 2)),0.5)*10)/10==a)&&(tipo==2))
  74.                                 tipo=5;
  75.                 return tipo;
  76.         }//Fin funcion resto
  77.        
  78.         static void mostrar(double a, double b, double c, int tipo){
  79.                 System.out.println("Los lados son: a="+a+" b="+b+" c="+c);
  80.                 switch (tipo){
  81.                 case 0:
  82.                         System.out.println("Es un triángulo imposible.");
  83.                         break;
  84.                 case 1:
  85.                         System.out.println("Es un triángulo escaleno");
  86.                         break;
  87.                 case 2:
  88.                         System.out.println("Es un triángulo isósceles");
  89.                         break;
  90.                 case 3:
  91.                         System.out.println("Es un triángulo equilátero");
  92.                         break;
  93.                 case 4:
  94.                         System.out.println("Es un triángulo recto escaleno");
  95.                         break;
  96.                 case 5:
  97.                         System.out.println("Es un triángulo recto isósceles");       
  98.                 }//Fin switch
  99.         }//Fin mostrar
  100.        
  101. }//Fin TipoTriangulos