I am not a Javascript developer, though I was able to use some opensource code and make most of the changes that I needed for my needs. I am just having problems with adjusting some of the output.

I have a script that calculates percentages based on a given starting number.
Which seems to work fine. A demo can be viewed here:
http://athleticimprovementcenter.com/demo/lactate_threshold_zone_calculator.html

I need to modify the low end and high end to not be a calculation, but to say "lower" for "0" and on the high end I get "NaN" but need it to be the word "greater"

Problem two is that the caclulations are based on the previous fields results for all zones and need to overide for certain zones. so for example zone 3, low end is the high end from zone 2. I need to be able to have the low end of for certain zones be based on a different percentage and not the low end of the previous zone. Again for only certain zones.

Code:
<SCRIPT language="javascript">
<!----
window.onError = null; 
var justloaded=true;
var expireDate = new Date; 
var dc = document.cookie
var nZones=15
if(dc!="")var aCookies=document.cookie.split(";");
function readcookie(){
	var f = document.frm_Heart_Rate_Calculator;
	var mhr="";
	if(dc!=""){
		for(var i=0; i<aCookies.length; i++){
			mhr = eval(aCookies[i].split("=")[1]);
			f.txt_Maxmum_HeartRate.value=mhr;
		}
	}
}
function writecookie(){
	var f=eval(parseInt(document.frm_Heart_Rate_Calculator.txt_Maxmum_HeartRate.value));
	expireDate.setYear(expireDate.getYear()+1)
	if(f>0 && !isNaN(f)){
		document.cookie = "mhr=" + f + "; expires=" + expireDate.toGMTString();
	}
}
function deletecookie(){
	if(document.cookie!=""){
		if(confirm("Do you want to remove the cookies to?")){
			expireDate.setYear(expireDate.getYear()-1)
			document.cookie = "mhr= ; expires=" + expireDate.toGMTString();
		}
	}
}
function browsertype(){
	var n=navigator.appName
	if(n == 'Microsoft Internet Explorer')	return "IE";
	else if(n == 'Netscape')return "NC";
	else return "unknown";
}
function browserver(v){
	var iVer;
	var strVer=navigator.appVersion.toLowerCase()
	if(browsertype()=="IE"){
		var ipos=eval(strVer.indexOf('msie '))
		iVer= parseFloat( strVer.substring(ipos+5,strVer.length) ) 
	}else{
		iVer=parseFloat(strVer);
	}
	return (iVer>=v)?true:false;
}
function PreLoadImage(imgsrc){
	if(browserver(4)){
		var head1= new Image();
		head1.src=imgsrc;
	}
return head1;
}
function ShowButton(imagename,objectsrc){
	if(browserver(4)) document.images[imagename].src=eval(objectsrc+".src");
};
function ShowQuad(loc1,loc2,loc3,loc4, objectsrc1,objectsrc2,objectsrc3,objectsrc4){
	ShowButton(loc1, objectsrc1);
	ShowButton(loc2, objectsrc2);
	ShowButton(loc3, objectsrc3);
	ShowButton(loc4, objectsrc4);
};




function clearform(){
	var f=document.frm_Heart_Rate_Calculator;
	f.txtage.value="";
	f.txt_Maxmum_HeartRate.value="";
	for(i=0;i<nZones;i++) f.txt[i].value="";
}
function makepos(n){
	return (n<0)? -n: n;
}
function posnum(n){
	if(isNaN(n) || n==0){
		if(!justloaded)	alert("Invalid entry");
		justloaded=false;
		return false;
	}
return true;
}
var a_Heart_Rate_Factors = new Array(0,0.81,0.89,0.93,0.99,1.02,1.06)
function calculate_heart_zones(nLower,nUpper){
	var sout=""
	sout+="<br>" + (a_Heart_Rate_Factors[nLower]*100) + "-" + (a_Heart_Rate_Factors[nUpper]*100) + "%"
	document.write(sout)
}
function calculate_heart_rate_levels(){
	var s= " - ";
	var b=" BPM";
	var f=document.frm_Heart_Rate_Calculator;
	var max=makepos(parseInt(f.txt_Maxmum_HeartRate.value));
	if(posnum(max)){
		f.txt_Maxmum_HeartRate.value=max;
		f.txt[0].value="Low End"+parseInt(max*a_Heart_Rate_Factors[0])+b;
		for(i=1;i<nZones;i++)	f.txt[i].value=parseInt(max*a_Heart_Rate_Factors[i-1])+s+parseInt(max*a_Heart_Rate_Factors[i])+b;
	}
	else clearform();
}


// --->
</SCRIPT>
</HEAD>
<BODY>
<CENTER>


<table border=0>
<CENTER>

<img src="http://www.athleticimprovementcenter.com/aicblog/files/images/hrcalc.jpg">
</CENTER>
<br>
<br>



<CENTER>
<TABLE BORDER=0 CELLPADDING="5" width=958px>

<TR>
<TD ALIGN=CENTER>
	
	<FORM NAME="frm_Heart_Rate_Calculator">
	
	<TABLE BORDER=1 cellspacing=5>


	<TR><TD ALIGN=RIGHT>
	Lactate Threshold (HR)
	</TD>
	<TD width=200px>
	<INPUT TYPE="text" NAME="txt_Maxmum_HeartRate" VALUE="" MAXLENGTH=3 SIZE=10 onChange="keyhandler(this,'max')" onkeyup="keyhandler(this,'max')" onFocus="this.select();this.focus();">
	</TD>	
	<TD><INPUT TYPE="button" NAME="cmdlevels" VALUE="Calculate Training Zones for LTHR" onClick="calculate_heart_rate_levels();writecookie();">
	</TD>
	</TR>
	
	
	
	<TR>
	<TD valign=bottom align=right><b><u>Zone</u> &nbsp;&nbsp;</b></TD>
	<TD valign=bottom  align=center><b><u>Range BPM</u></b></TD>
	<td  valign=bottom align=left><b> &nbsp;&nbsp;<u>Purpose</u></b></td>
	</TR>
	

	
	<TR><TD valign=top ALIGN=RIGHT>
	<font color=darkblue><b>Zone 1</b>
		<script>
		<!--
		calculate_heart_zones(0,1)
		//--->
	</script>
</font>
	</TD>
	<TD ALIGN=left valign=top>
	<INPUT TYPE="hidden" NAME="txt" VALUE="" SIZE=20><INPUT TYPE="text" NAME="txt" VALUE="Enter LTHR Above" SIZE=20>
	</TD>
	<TD valign=top ALIGN=left><font color=darkblue>Less than 81% of LTHR
</font>
	</TD>
	</TR>
	<TR>
	<TD valign=top ALIGN=RIGHT>
	<font color=darkblue><b>Zone 2</b>
	<script>
		<!--
		calculate_heart_zones(1,2)
		//--->
	</script>
	</font>
	</TD>
	<TD ALIGN=left valign=top>
	<INPUT TYPE="txt" NAME="txt" VALUE="" SIZE=20>
	</TD>
	<TD valign=top ALIGN=left><font color=darkblue>81% to 89% of LTHR
</font>
	</TD>
	</TR>
<TR>
	<TD valign=top ALIGN=RIGHT>
	<font color=darkgreen><b>Zone 3</b>
	<script>
		<!--
		calculate_heart_zones(2,3)
		//--->
	</script>
	</font>
	</font>
	</TD>
	<TD ALIGN=left valign=top>
	<INPUT TYPE="txt" NAME="txt" VALUE="" SIZE=20>
	</TD>
	<TD valign=top ALIGN=left><font color=darkgreen>90% to 93% of LTHR
</font>
	</TD>
	</TR>
<TR>
	<TD valign=top ALIGN=RIGHT>
	<font color=darkgreen><b>Zone 4</b>
	<script>
		<!--
		calculate_heart_zones(3,4)
		//--->
	</script>
	</font>
	</TD>
	<TD ALIGN=left valign=top>
	<INPUT TYPE="txt" NAME="txt" VALUE="" SIZE=20>
	</TD>
	<TD ALIGN=left valign=top><font color=darkgreen>94% to 99% of LTHR</font></TD>
	</TR>
	<tr>
	<TD valign=top ALIGN=RIGHT>
	<font color=red><b>Zone 5a</b>
	<script>
		<!--
		calculate_heart_zones(4,5)
		//--->
	</script>
	</font>
	</TD>
	<TD ALIGN=left valign=top>
	<INPUT TYPE="txt" NAME="txt" VALUE="" SIZE=20>
	</TD>
	<TD ALIGN=left valign=top><font color=red>100% to 102% of LTHR

</font>
	</TD>
	</tr>
<tr>
	<TD valign=top ALIGN=RIGHT>
	<font color=red><b>Zone 5b</b>
	<script>
		<!--
		calculate_heart_zones(5,6)
		//--->
	</script>
	</font>
	</TD>
	<TD ALIGN=left valign=top>
	<INPUT TYPE="txt" NAME="txt" VALUE="" SIZE=20>
	</TD>
	<TD ALIGN=left valign=top><font color=red>103% to 106% of LTHR

</font>
	</TD>
	</tr>
	<tr>
	<TD valign=top ALIGN=RIGHT>
	<font color=red><b>Zone 5c</b>
	<script>
		<!--
		calculate_heart_zones(6,6)
		//--->
	</script>
	</font>
	</TD>
	<TD ALIGN=left valign=top>
	<INPUT TYPE="txt" NAME="txt" VALUE="" SIZE=20>
	</TD>
	<TD ALIGN=left valign=top><font color=red>More than 106% of LTHR
</font>
	</TD>
	</tr>
	</TABLE>
	</FORM>
</TD>
</TR>