04
Apr
09

[Javascript] Divide Simple Algebraic Terms

Been working on some maths things today, and wrote this function to divide basic terms.
Will work on any string in the format of:
ax^n; where a = any number, x = any constant character, n = any number

function divideTerm(Term1, Term2, constantChar) {
	//The coefficient of the first Term
	var Term1coeff = Term1.split(constantChar)[0];
	//The power of the first Term
	var Term1power = Term1.split("^")[1];
	//The coefficient of the second Term
	var Term2coeff = Term2.split(constantChar)[0];
	//The power of the second Term
	var Term2power = Term2.split("^")[1];
	//If no coefficient, set to 1
	if(Term1coeff==""){Term1coeff=1;}
	//If no power, set to 1
	if(String(Term1power)=="undefined"){Term1power=1;}
	//If no coefficient, set to 1
	if(Term2coeff==""){Term2coeff=1;}
	//If no power, set to 1
	if(String(Term2power)=="undefined"){Term2power=1;}
	//Divide the two coefficients, add the character and claret, subtract the two powers
	return String(Term1coeff/Term2coeff) + constantChar + "^" + String(Term1power-Term2power);
}

Usage:
Sample project:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Dividing Alg Terms</title>
<script language="javascript" type="text/javascript">
function divideTerm(Term1, Term2, constantChar) {
	var Term1coeff = Term1.split(constantChar)[0];
	var Term1power = Term1.split("^")[1];
	var Term2coeff = Term2.split(constantChar)[0];
	var Term2power = Term2.split("^")[1];
	if(Term1coeff==""){Term1coeff=1;}
	if(String(Term1power)=="undefined"){Term1power=1;}
	if(Term2coeff==""){Term2coeff=1;}
	if(String(Term2power)=="undefined"){Term2power=1;}
	return String(Term1coeff/Term2coeff) + constantChar + "^" + String(Term1power-Term2power);
}

function divide() {
	document.getElementById("result").value = divideTerm(
		document.getElementById("trm1").value,
		document.getElementById("trm2").value,
		document.getElementById("char").value);
}
</script>
</head>

<body>
<form id="form1" name="form1" method="post" action="">
  <table width="297" border="0">
    <tr>
      <td width="143"><strong>Term 1: </strong></td>
      <td width="144"><input name="textfield3" type="text" id="trm1" value="147x^23" /></td>
    </tr>
    <tr>
      <td><strong>Term 2: </strong></td>
      <td><input name="textfield4" type="text" id="trm2" value="24.5x^19" /></td>
    </tr>
    <tr>
      <td><strong>Constant Character: </strong></td>
      <td><input name="textfield" type="text" id="char" value="x" /></td>
    </tr>
    <tr>
      <td colspan="2"><div align="center">
        <br />
	    <input name="button" type="button" value="Divide" onclick="divide()" />
      </div></td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
    </tr>
    <tr>
      <td><strong>Result:</strong></td>
      <td><input type="text" name="textfield2" readonly="true" id="result"/></td>
    </tr>
  </table>
  </form>
</body>
</html>

E.g.
147xy^23/24.5xy^19 = 6xy^4

Advertisements

0 Responses to “[Javascript] Divide Simple Algebraic Terms”



  1. Leave a Comment

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s


%d bloggers like this: