function comprobar(importe, cuota, tipo, plazo)
{
	if ( isNaN(importe) || importe == 0 )
	{ 
		alert("Debe introducir el importe de la hipoteca");
	  	return false;
	}
	if ( isNaN(tipo) || tipo == 0.0 ) 
	{ 
		alert("Debe introducir el tipo de interés");
	  	return false;
	}
	if ( isNaN(cuota) || cuota == 0 )
	{ 
		alert("Debe introducir el importe de la cuota");
	  	return false;
	}
	if ( isNaN(plazo) || plazo == 0 )
	{ 
		alert("Debe introducir el plazo de la hipoteca");
	  	return false;
	}

	return true;
} 

function Cuota() 
{
	tipo = parseFloat(document.forms[0].tipo.value)
	plazo = parseInt(document.forms[0].plazo.value)
	importe = parseInt(document.forms[0].importe.value)

	if(!comprobar(importe, plazo, tipo, 1))
		return;

	if (document.forms[0].tipoplazo.options[0].selected)
		plazo = plazo * 12;
	

	tipo = tipo / 1200;
	y  = 1.0 + tipo;
	cuota = importe * tipo * Math.pow(y,plazo) / ( Math.pow(y,plazo) - 1.0 ) 
	document.forms[0].cuota.value = Math.round(cuota *100.00) / 100.00
}

function Importe() 
{
	plazo = parseInt(document.forms[0].plazo.value)
	tipo = parseFloat(document.forms[0].tipo.value)
	cuota = parseInt(document.forms[0].cuota.value)

	if (document.forms[0].tipoplazo.options[0].selected)
		plazo = plazo * 12;

	if(!comprobar(1, cuota, plazo, tipo))
		return;


	tipo = tipo / 1200;
	y  = 1.0 + tipo;
	importe = cuota / ( tipo * Math.pow(y,plazo) / ( Math.pow(y,plazo) - 1.0 ) )
	document.forms[0].importe.value = Math.round(importe *100.00) / 100.00
}

function Plazo()
{
	importe = parseInt(document.forms[0].importe.value)
	cuota = parseInt(document.forms[0].cuota.value)
	tipo = parseFloat(document.forms[0].tipo.value)

	if(!comprobar(importe, cuota, 1, tipo))
		return;

	tipo = tipo / 1200.0;
	y  = 1.0 + tipo;

	plazo = 1;
	cuotax = Math.round(importe * tipo * Math.pow(y,plazo) / ( Math.pow(y,plazo) - 1.0 ))
	while (cuotax > cuota)
	{	ultima_cuota = cuotax;
		cuotax = Math.round(importe * tipo * Math.pow(y,plazo) / ( Math.pow(y,plazo) - 1.0 ))
		plazo++
		if (plazo > 420)
		{	alert("Plazo excesivo (> 35 años)")
			return;
		}
	}
	document.forms[0].plazo.value = Math.round(plazo - 1) 
	document.forms[0].tipoplazo.options[1].selected = true
}
