<center><h1>A Simple Calculator</h1></center>
<!-- 
	Microsoft JScript sample 
	JScript:  The easiest, most powerful way to program custom web solutions. 
-->
<center>
<form name="Keypad">
<table border=2 width=50 height=60 cellpadding=1 cellspacing=5>
<tr>
	<td colspan=3 align=center><input name="ReadOut" type="Text" size=24 value="0" width=100%></td>
	<td></td>
	<td><input name="Clear" type="Button" value="  C  " onclick="Clear_onClick()"></td>
	<td><input name="ClearEntry" type="Button" value="  CE " onclick="ClearEntry_onClick()"></td>
</tr>
<tr>
	<td><input name="Seven" type="Button" value="  7  " onclick="NumPressed(7)"></td>
	<td><input name="Eight" type="Button" value="  8  " onclick="NumPressed(8)"></td>
	<td><input name="Nine" type="Button" value="  9  " onclick="NumPressed(9)"></td>
	<td></td>
	<td><input name="Neg" type="Button" value=" +/- " onclick="Neg_onClick()"></td>
	<td><input name="Percent" type="Button" value="  % " onclick="Percent_onClick()"></td>
</tr>
 <tr>
	<td><input name="Four" type="Button" value="  4  " onclick="NumPressed(4)"></td>
	<td><input name="Five" type="Button" value="  5  " onclick="NumPressed(5)"></td>
	<td><input name="Six" type="Button" value="  6  " onclick="NumPressed(6)"></td>
	<td></td>
	<td align=center><input name="Plus" type="Button" value="  +  " onclick="Plus_onClick()"></td>
	<td align=center><input name="Minus" type="Button" value="   -   " onclick="Minus_onClick()"></td>
</tr>
<tr>
	<td><input name="One" type="Button" value="  1  " onclick="NumPressed(1)"></td>
	<td><input name="Two" type="Button" value="  2  " onclick="NumPressed(2)"></td>
	<td><input name="Three" type="Button" value="  3  " onclick="NumPressed(3)"></td>
	<td></td>
	<td align=center><input name="Multiply" type="Button" value="  *  " onclick="Multiply_onClick()"></td>
	<td align=center><input name="Divide" type="Button" value="   /   " onclick="Divide_onClick()"></td>
</tr>
<tr>
	<td><input name="Zero" type="Button" value="  0  " onclick="NumPressed(0)"></td>
	<td><input name="Decimal" type="Button" value="   .  " onclick="Decimal_onClick()"></td>
	<td colspan=3></td>
	<td><input name="Equals" type="Button" value="  =  " onclick="Equals_onClick()"></td>
</tr>
</table>
</form>
</center>
<script language="JavaScript">
// Module-level variables
var Accum;		// Previous number (operand) awaiting operation
var FlagNewNum; 	// Flag to indicate a new number (operand) is being entered
var PendingOp;		// Pending operation waiting for completion of second operand

function NumPressed(Num) {
	if (FlagNewNum) {
		document.Keypad.ReadOut.value  = Num;
		FlagNewNum = false;
	} else {
		if (document.Keypad.ReadOut.value == "0") {
			document.Keypad.ReadOut.value = Num;
		} else {
			document.Keypad.ReadOut.value= document.Keypad.ReadOut.value + Num;
		}
	}
}

function Decimal_onClick() {
var curReadout;
	curReadOut = document.Keypad.ReadOut.value;
	if (FlagNewNum) {
		curReadOut = "0.";
		FlagNewNum = false;
	} else {
		if (curReadOut.indexOf(".") == -1) {
			curReadOut = curReadOut + ".";
		}
	}
	document.Keypad.ReadOut.value = curReadOut;
}

function Plus_onClick() {
	Operation("+");
}

function Minus_onClick() {
	Operation("-");
}

function Multiply_onClick() {
	Operation("*");
}

function Divide_onClick() {
	Operation("/");
}

function Operation(Op) {
	var Readout;

	Readout = document.Keypad.ReadOut.value;
	if (FlagNewNum && PendingOp != "=") {
		// User is hitting op keys repeatedly, so don't do anything
	} else {
		FlagNewNum = true;
		if ("" + PendingOp == "+") {
			Accum = parseFloat(Accum) + parseFloat(Readout);
		} else if ("" + PendingOp == "-") {
			Accum = parseFloat(Accum) - parseFloat(Readout);
		} else if ("" + PendingOp == "/") {
			Accum = parseFloat(Accum) / parseFloat(Readout);
		} else if ("" + PendingOp == "*") {
			Accum = parseFloat(Accum) * parseFloat(Readout);
		} else {
			Accum = Readout;
		}
		document.Keypad.ReadOut.value = Accum;
		PendingOp = Op;
	}
}

function ClearEntry_onClick() {
// Remove current number and reset state
    document.Keypad.ReadOut.value = "0";
    FlagNewNum = true;
}

function Clear_onClick() {
// Clear accumulator and pending operation, and clear display
	Accum = 0;
	PendingOp = "";
	ClearEntry_onClick;
}

function Neg_onClick() {
	document.Keypad.ReadOut.value = parseFloat(document.Keypad.ReadOut.value) * -1;
}

function Percent_onClick() {
	document.Keypad.ReadOut.value = (parseFloat(document.Keypad.ReadOut.value) / 100) * Accum;
}

function Equals_onClick() {
	Operation("=");
}

function Seven_onClick() {
 alert("7");
 NumPressed(7);
}

</script>
