<!-- // --> <h1>Your browser does not support <a href="http://home.netscape.com/comprod/products/navigator/version_2.0/script/script_info/">JavaScript</a>, sorry</h1>.
<!-- // -->The conversion table below will not work with your browser<p><hr>
<!--
function checkNum(str) {
	for (var i=0; i<str.length; i++) {
	var ch = str.substring(i, i + 1)
	if (ch!="." && ch!="+" && ch!="-" && ch!="e" && ch!="E" && (ch < "0" || ch > "9")) {
		alert("Please enter a valid number.");
		return false
		}
	}
	return true
}

function normalize(what,digits) {
	var str=""+what;
	var pp=Math.max(str.indexOf("+"),str.indexOf("-"));
	var idot=str.indexOf(".");
	if (idot>=1) {
		var ee=(pp>0)?str.substring(pp-1,str.length):"";
		digits+=idot;
		if (digits>=str.length)
			return str;
		if (pp>0 && digits>=pp)
			digits-=pp;
		var c=eval(str.charAt(digits));
		var ipos=digits-1;
		if (c>=5) {
			while (str.charAt(ipos)=="9") ipos--;
			if (str.charAt(ipos)==".") {
				var nc=eval(str.substring(0,idot))+1;
				if (nc==10 && ee.length>0) {
		nc=1;
					ee="e"+(eval(ee.substring(1,ee.length))+1);
				}
				return ""+nc+ee;
			}
			return str.substring(0,ipos)+(eval(str.charAt(ipos))+1)+ee;
		} else
			var ret=str.substring(0,digits)+ee;
		for (var i=0; i<ret.length; i++)
			if (ret.charAt(i)>"0" && ret.charAt(i)<="9")
					return ret;
			return str;
	 }
	 return str;
}

function compute(obj,val) {
	if (obj[val].value) {
		if (val=="Celsius") 
                        obj.Kelvin.value=normalize(eval(obj.Celsius.value)+273.15,6);
		else if (val=="Fahrenheit")
                        obj.Kelvin.value=normalize((eval(obj.Fahrenheit.value)-32)/9*5+273.15,6); 
		else if (val=="Rankine")
                        obj.Kelvin.value=normalize(eval(obj.Rankine.value)/1.8,6);
		obj.Celsius.value=normalize(eval(obj.Kelvin.value)-273.15,6);
                obj.Fahrenheit.value=normalize((eval(obj.Kelvin.value)-273.15)*9/5+32,6); 
                obj.Rankine.value=normalize(eval(obj.Kelvin.value)*1.8,6);
		if (eval(obj.Kelvin.value)<0)
			alert("The temperature you've just entered is theoretically impossible.\n" +
				" It can't be colder than 0 degrees Kelvin");
	}
}
// -->

