function processFactorial() {var n = document.factorialForm.input.value;	try		{ 		var value = factorial(parseInt(n),1);		}	catch (error)		{ 		 document.getElementById("factorialAnswer").innerHTML = "You must enter a positive integer first. Try again.";		}if ((n == '')|| (parseInt(n) < 0) || (Math.floor(n) != n)) document.getElementById("factorialAnswer").innerHTML = "You must enter a positive integer. Try again.";else document.getElementById("factorialAnswer").innerHTML =  n.toString() + "! = " + value;}function processPermutation() {var n = document.permutationForm.inputN.value;var r = document.permutationForm.inputR.value;	try		{ 		var value = nPr(parseInt(n), parseInt(r));		}	catch (error)		{ 		 document.getElementById("permutationAnswer").innerHTML = "You must enter two positive integers first. Try again.";		}if ((n == '')|| (parseInt(n) < 0) || (Math.floor(n) != n)) document.getElementById("permutationAnswer").innerHTML = "<font class = math>n</font> must be a positive integer. Try again.";else if ((r == '')|| (parseInt(r) < 0) || (Math.floor(r) != r)) document.getElementById("permutationAnswer").innerHTML = "<font class = math>r</font> must be a positive integer. Try again.";else if (parseInt(n) < parseInt(r)) document.getElementById("permutationAnswer").innerHTML = "<font class = math>r</font> must be less than <font class = math>n</font>. Try again.";else document.getElementById("permutationAnswer").innerHTML =  "<font class = math>P</font>(" +  n.toString() + ", " + r.toString() + ") = " + value;}function processFactorial() {var n = document.factorialForm.input.value;	try		{ 		var value = factorial(parseInt(n),1);		}	catch (error)		{ 		 document.getElementById("factorialAnswer").innerHTML = "You must enter a positive integer first. Try again.";		}if ((n == '')|| (parseInt(n) < 0) || (Math.floor(n) != n)) document.getElementById("factorialAnswer").innerHTML = "You must enter a positive integer. Try again.";else document.getElementById("factorialAnswer").innerHTML =  n.toString() + "! = " + value;}function processCombination() {var n = document.combinationForm.inputN.value;var r = document.combinationForm.inputR.value;	try		{ 		var value = nCr(parseInt(n), parseInt(r));		}	catch (error)		{ 		 document.getElementById("combinationAnswer").innerHTML = "You must enter two positive integers first. Try again.";		}if ((n == '')|| (parseInt(n) < 0) || (Math.floor(n) != n)) document.getElementById("combinationAnswer").innerHTML = "<font class = math>n</font> must be a positive integer. Try again.";else if ((r == '')|| (parseInt(r) < 0) || (Math.floor(r) != r)) document.getElementById("combinationAnswer").innerHTML = "<font class = math>r</font> must be a positive integer. Try again.";else if (parseInt(n) < parseInt(r)) document.getElementById("combinationAnswer").innerHTML = "<font class = math>r</font> must be less than <font class = math>n</font>. Try again.";else document.getElementById("combinationAnswer").innerHTML =  "<font class = math>C</font>(" +  n.toString() + ", " + r.toString() + ") = " + value;}function nCr(N, R){  R=parseInt(R);  N=parseInt(N);   if(R==N)  {	temp=1;		return temp.toString();  }  if((R)>(N/2))  {	R=N-R;  }  var denom=N-R;    var answer2=factorial(N, denom);  var tmp=factorial(R, 0);  answer2=answer2/tmp;  return answer2.toString();  }function nPr(N, R){  R=parseInt(R);  N=parseInt(N);  var denom=N-R;    var answer2=factorial(N, denom);    return(answer2.toString());}function factorial(intput, limit){  intput = Math.round(intput);  var answer = 1;    for(counter = intput; counter>limit; counter=counter-1)	{	  answer = answer*counter;	}  return answer.toString();}