// JavaScript Document
   <!--
   //Comprueba si la entrada en las cajas de texto contienen
   //   solo números o el punto decimal.
   function SonNumeros( valor_1 ){
            if ( valor_1 == "" )
               return false;
            var punto = true;
            for (var i = 0; i < valor_1.length; i++){
                var ch = valor_1.substring(i, i+1)
                if (( ch < "0" || ch > "9" )){
                   if ( ch != "."){
                      return false;
                   }
                   else{

                   }
                }
            }
            return true;
   }

   //Comprueba que los datos introducidos sean válidos y estén
   //   dentro del rango fisiológico, y calcula el IMC. 
   function IndMasCor(peso_1,talla_1){
            //Comprueba si se introdujo un número, y si no es así
            //   lo indica y borra la caja correspondiente.
            if(!SonNumeros(peso_1.value)){
               var mensaje="El dato de PESO introducido NO es numérico.\n\n"+
                           "Solo puedes usar dígitos o\n"+
                           "el <.> como separador decimal."
               alert(mensaje);
               //Borra el valor incorrecto de peso.
               peso_1.value="";
               peso_1.focus();
               return "";
            }
            //Convierte el dato de la caja a su valor numérico real.
            var pe = parseFloat(peso_1.value,10);
            if(isNaN(pe) || (pe < 40 || pe > 200)){
               mensaje = "¡ Peso incorrecto !\n\n"+
                         "El peso debe ser un valor numérico\n"+
                         "comprendido entre 40 y 200 kg.";
               alert(mensaje);
               //Devuelve como valor de peso los rangos extremos.
               var pes_dev; 
               if ( isNaN(pe) ){
                  pes_dev = "";
               }
               else{
                  pes_dev = 40;
                  if ( pe > 200 )
                     pes_dev = 200;
               } 
               document.forms[0].peso.value = pes_dev;
               document.forms[0].peso.focus();
               return "";
            }
            if(!SonNumeros(talla_1.value)){
               var mensaje="El dato de TALLA introducido NO es numérico.\n\n"+
                           "Solo puedes usar dígitos o\n"+
                           "el <.> como separador decimal."
               alert(mensaje);
               talla_1.value="";
               talla_1.focus();
               return "";
            }
            var ta=parseFloat(talla_1.value,10);
            if(isNaN(ta) || ( ta < 1.4 || ta > 2.1)){
               var mensaje = "¡ Talla incorrecta !\n\n"+
                             "La talla debe ser un valor numérico\n"+
                             "comprendido entre 1.40 y 2.10 m.";
               alert(mensaje);
               var tall_dev; 
               if ( isNaN(pe) ){
                  tall_dev = "";
               }
               else{
                  tall_dev = 1.400;
                  if ( pe > 150 )
                     tall_dev = 2.100;
               } 
               document.forms[0].talla.value = tall_dev;
               talla_1.value="";
               talla_1.focus();
               return "";
            }
            return Math.round((pe/(ta*ta))*10)/10;
   }

   //Decide que diagnóstico mostrar en función del valor del IMC. 
   function DiagIMC (imc_1){
            if ( imc_1 == ""){
                return "";
            }
            else{
                if ( imc_1 < 18 ){
                   return "Delgadez muy preocupante.\n"+
                          "En estas situaciones crece el riesgo de\n"+
                          "padecer patologías respiratorias, diges-\n"+
                          "tivas y trastornos del comportamiento\n"+
                          "alimentario como anorexia y/o bulimia.";
                } 
                if ( imc_1 < 20 ){
                   return "Delgadez no recomendable.\n"+
                          "Peso insuficiente para su talla. Debe\n"+
                          "incrementarse ligeramente el peso hasta\n"+
                          "sobrepasar un IMC de 20."; 
                }
                if ( imc_1 < 25 ){
                   return "¡Enhorabuena! Tu peso es ideal para tu altura.\n"+
                          "Este valor del índice se corresponde con\n"+
                          "la menor tasa de morbidez y mortalidad."; 
                }
                if ( imc_1 < 30 ){
                   return "Sobrepeso.\n"+
                          "Debes cuidar de no alcanzar un valor de 30\n"+
                          "en el índice de masa corporal IMC y re-\n"+
                          "ducirlo hasta 25 si fuera posible, ba-\n"+
                          "jando un poco de peso.";
                } 
                if ( imc_1 < 35 ){
                   return "Obesidad.\n"+
                          "Necesitas reducir peso para disminuir los\n"+
                          "riesgos de patologías asociadas como hi-\n"+
                         "pertensión, diabetes, aterosclerosis,..."; 
                }
                if ( imc_1 < 40 ){
                   return "Obesidad severa.\n"+
                          "Un IMC tan elevado está siempre asociado\n"+
                          "con trastornos muy graves de los siste-\n"+
                          "mas cardiovascular, endocrino, etc...\n"+
                          "Debes reducir el peso inmediatamente.";
                }
                if ( imc_1 == 40 || imc_1 > 40 ){
                   return "Obesidad mórbida.\n"+
                          "Debes acudir a un especialista inmedia-\n"+
                          "tamente.";
                }
            }
   }

   //Calcula el peso para un IMC de 20 (talla fija).
   function LimiteInferior (talla_1){
            var ta=parseFloat(talla_1.value,10);
            return Math.round((20 * ta* ta)*10)/10;
   }

   //Calcula el peso para un IMC de 25 (talla fija).
   function LimiteSuperior (talla_1){
            var ta=parseFloat(talla_1.value,10);
            return Math.round((25 * ta* ta)*10)/10;
   }

   //-->
