function convert()
{
	var from = document.getElementById("from").value;

	var i = document.getElementById("select1").selectedIndex;
	var j = document.getElementById("select2").selectedIndex;
	var n1 = names[i];
	var n2 = names[j];

	if ( from.length == 0 )
   	{
      	alert("Please enter the number of " + n1 + " to convert to " + n2);
		return;
	}

	from = fixNumber(from);
	from = parseFloat(from);
	if ( isNaN(from) )
	{
		alert("Please enter " + n1 + " as a number");
		return;
   	}

    var n = nums[i][j];
	var d = dems[i][j];

	var x = document.getElementById("results");
	x.style.display = "block";

	var res = getResult(from,n,d);
	if ( res == 1 )
		n2 = singular[j];
	x.innerHTML = from + " " + n1 + " = " + res + " " + n2;

}

function change()
{
	var i = document.getElementById("select1").selectedIndex;
	var j = document.getElementById("select2").selectedIndex;

	var x = document.getElementById("one");
	if ( i == j )
	{
		x.innerHTML = "-";
		return;
	}
		
    var n = nums[i][j];
	var d = dems[i][j];

	var n1 = singular[i];
	var n2 = names[j];

	x.innerHTML = "1 " + singular[i] + " = " + (n / d) + " " + names[j];
	x.innerHTML += "<br>1 " + singular[j] + " = " + (d / n) + " " + names[i];
}

function fixNumber(x)
{
    x = x.replace(/,/g, "");
    return x;
}

function convertI()
{
	var from = document.getElementById("from").value;


	if ( from.length == 0 )
   	{
      	alert("Please enter the number of " + n1 + " to convert to " + n2);
		return;
	}

	from = fixNumber(from);
	from = parseFloat(from);
	if ( isNaN(from) )
	{
		alert("Please enter " + n1 + " as a number");
		return;
   	}

	var x = document.getElementById("results");
	x.style.display = "block";

	var res = getResult(from,n,d);
	if ( res == 1 )
		x.innerHTML = from + " " + n1 + " = " + res + " " + n2s;
	else
		x.innerHTML = from + " " + n1 + " = " + res + " " + n2;

}

// calculate ( ( from * n ) / d ) so as to reduce floating point errors

function getResult(from, n, d)
{
	var factor = 1;
	while ( from != Math.floor(from) && factor < 1000000 )
	{
		if ( from != Math.floor(from) )
		{
			from *= 10;
			factor *= 10;
		}
	}
	var x = ( from * n ) / d
	if ( factor == 1 )
	{
		return x;
	}
	else
	{
		return ( x / factor );
	}
}






