/**** Funcion CalcularTERMINADORES(c_long.value) ****/ function CalcularTERMINADORES(colongitud) { /* Definicion e inicializacion de variables */ var ANOCHECER = 0; // lontitud del terminador del anochecer var AMANECER = 0; // longitud del terminador del amanecer var FASE = ""; // contendra una cadena con la fase de la Luna /* comprueba que se introducen valores numericos y no alfabeticos */ if ( isNaN(colongitud) ) { alert("Para realizar los cálculos es imprescindible la entrada de valores numéricos"); return true; } /* Valida los campos: exige los necesarios y convierte a valor 0 los campos vacios no necesarios */ if ( colongitud == "" ) { alert (" Debe introducirse un valor para la COLONGITUD"); // advertencia document.CalculadoraTERMINADORES.c_long.focus(); // posicionarse en el campo vacio return false; } /* Convierte cadenas a valores numericos e inicializa las variables de RESULTADOS */ colongitud = parseInt(colongitud); /* Realiza los calculos y prepara los valores a mostrar */ ANOCHECER = 180 - colongitud; // calculo del Terminador Oeste (ANOCHECER) if ( colongitud >= 0 && colongitud <= 180 ) { // calculo del Terminador Este (AMANECER) AMANECER = 0 - colongitud; } else { AMANECER = 360 - colongitud; } if ( AMANECER <= 90 && AMANECER >= -90 ) { // comprueba si es fase CRECIENTE FASE = " Terminador ESTE visible. Luna en CRECIENTE"; } if ( ANOCHECER <= 90 && ANOCHECER >= -90 ) { // comprueba si es fase DECRECIENTE FASE = " Terminador OESTE visible. Luna en DECRECIENTE"; } if ( Math.abs(AMANECER) == Math.abs(ANOCHECER) ) { // comprueba si es fase LLENA o NUEVA if ( AMANECER == 90 ) { FASE = " Luna NUEVA"; } else { FASE = " Luna LLENA"; } } /* Muestra los resultados de los calculos en el formulario */ document.Terminadores.TEste.value = AMANECER; document.Terminadores.TOeste.value = ANOCHECER; document.Terminadores.Fase.value = FASE; return true; }