home *** CD-ROM | disk | FTP | other *** search
/ PC User 2005 May / CD / PCU0505CD.iso / software / full / coffecup / files / html2005.exe / %MAINDIR% / Javascript / Calculator.xml < prev    next >
Encoding:
Text File  |  2005-02-16  |  4.1 KB  |  186 lines

  1. <ccResource>
  2.   <ccTitle>
  3. Calculator
  4.   </ccTitle>
  5.   <ccCategory>
  6. Fun Stuff
  7.   </ccCategory>
  8.   <ccDescription>
  9. A Simple Calculator
  10.   </ccDescription>
  11.   <ccInstructions>
  12.  
  13.   </ccInstructions>
  14.   <ccHeadContent>
  15.   
  16.   </ccHeadContent>
  17.   <ccBodyContent>
  18. <CENTER>
  19.  
  20. <FORM name="Keypad" action="">
  21. <TABLE>
  22. <B>
  23. <TABLE border=2 width=50 height=60 cellpadding=1 cellspacing=5>
  24. <TR>
  25. <TD colspan=3 align=middle>
  26. <input name="ReadOut" type="Text" size=24 value="0" width=100%>
  27. </TD>
  28. <TD
  29. </TD>
  30. <TD>
  31. <input name="btnClear" type="Button" value="  C  " onclick="Clear()">
  32. </TD>
  33. <TD><input name="btnClearEntry" type="Button" value="  CE " onclick="ClearEntry()">
  34. </TD>
  35. </TR>
  36. <TR>
  37. <TD>
  38. <input name="btnSeven" type="Button" value="  7  " onclick="NumPressed(7)">
  39. </TD>
  40. <TD>
  41. <input name="btnEight" type="Button" value="  8  " onclick="NumPressed(8)">
  42. </TD>
  43. <TD>
  44. <input name="btnNine" type="Button" value="  9  " onclick="NumPressed(9)">
  45. </TD>
  46. <TD>
  47. </TD>
  48. <TD>
  49. <input name="btnNeg" type="Button" value=" +/- " onclick="Neg()">
  50. </TD>
  51. <TD>
  52. <input name="btnPercent" type="Button" value="  % " onclick="Percent()">
  53. </TD>
  54. </TR>
  55. <TR>
  56. <TD>
  57. <input name="btnFour" type="Button" value="  4  " onclick="NumPressed(4)">
  58. </TD>
  59. <TD>
  60. <input name="btnFive" type="Button" value="  5  " onclick="NumPressed(5)">
  61. </TD>
  62. <TD>
  63. <input name="btnSix" type="Button" value="  6  " onclick="NumPressed(6)">
  64. </TD>
  65. <TD>
  66. </TD>
  67. <TD align=middle><input name="btnPlus" type="Button" value="  +  " onclick="Operation('+')">
  68. </TD>
  69. <TD align=middle><input name="btnMinus" type="Button" value="   -   " onclick="Operation('-')">
  70. </TD>
  71. </TR>
  72. <TR>
  73. <TD>
  74. <input name="btnOne" type="Button" value="  1  " onclick="NumPressed(1)">
  75. </TD>
  76. <TD>
  77. <input name="btnTwo" type="Button" value="  2  " onclick="NumPressed(2)">
  78. </TD>
  79. <TD>
  80. <input name="btnThree" type="Button" value="  3  " onclick="NumPressed(3)">
  81. </TD>
  82. <TD>
  83. </TD>
  84. <TD align=middle><input name="btnMultiply" type="Button" value="  *  " onclick="Operation('*')">
  85. </TD>
  86. <TD align=middle><input name="btnDivide" type="Button" value="   /   " onclick="Operation('/')">
  87. </TD>
  88. </TR>
  89. <TR>
  90. <TD>
  91. <input name="btnZero" type="Button" value="  0  " onclick="NumPressed(0)">
  92. </TD>
  93. <TD>
  94. <input name="btnDecimal" type="Button" value="   .  " onclick="Decimal()">
  95. </TD>
  96. <TD colspan=3>
  97. </TD>
  98. <TD>
  99. <input name="btnEquals" type="Button" value="  =  " onclick="Operation('=')">
  100. </TD>
  101. </TR>
  102. </TABLE>
  103. </TABLE>
  104. </B>
  105. </FORM>
  106. </CENTER>
  107. <font face="Verdana, Arial, Helvetica" size=2>
  108. <SCRIPT LANGUAGE="JavaScript">
  109. <!-- Begin
  110. var FKeyPad = document.Keypad;
  111. var Accumulate = 0;
  112. var FlagNewNum = false;
  113. var PendingOp = "";
  114. function NumPressed (Num) {
  115. if (FlagNewNum) {
  116. FKeyPad.ReadOut.value  = Num;
  117. FlagNewNum = false;
  118.    }
  119. else {
  120. if (FKeyPad.ReadOut.value == "0")
  121. FKeyPad.ReadOut.value = Num;
  122. else
  123. FKeyPad.ReadOut.value += Num;
  124.    }
  125. }
  126. function Operation (Op) {
  127. var Readout = FKeyPad.ReadOut.value;
  128. if (FlagNewNum && PendingOp != "=");
  129. else
  130. {
  131. FlagNewNum = true;
  132. if ( '+' == PendingOp )
  133. Accumulate += parseFloat(Readout);
  134. else if ( '-' == PendingOp )
  135. Accumulate -= parseFloat(Readout);
  136. else if ( '/' == PendingOp )
  137. Accumulate /= parseFloat(Readout);
  138. else if ( '*' == PendingOp )
  139. Accumulate *= parseFloat(Readout);
  140. else
  141. Accumulate = parseFloat(Readout);
  142. FKeyPad.ReadOut.value = Accumulate;
  143. PendingOp = Op;
  144.    }
  145. }
  146. function Decimal () {
  147. var curReadOut = FKeyPad.ReadOut.value;
  148. if (FlagNewNum) {
  149. curReadOut = "0.";
  150. FlagNewNum = false;
  151.    }
  152. else
  153. {
  154. if (curReadOut.indexOf(".") == -1)
  155. curReadOut += ".";
  156.    }
  157. FKeyPad.ReadOut.value = curReadOut;
  158. }
  159. function ClearEntry () {
  160. FKeyPad.ReadOut.value = "0";
  161. FlagNewNum = true;
  162. }
  163. function Clear () {
  164. Accumulate = 0;
  165. PendingOp = "";
  166. ClearEntry();
  167. }
  168. function Neg () {
  169. FKeyPad.ReadOut.value = parseFloat(FKeyPad.ReadOut.value) * -1;
  170. }
  171. function Percent () {
  172. FKeyPad.ReadOut.value = (parseFloat(FKeyPad.ReadOut.value) / 100) * parseFloat(Accumulate);
  173. }
  174. // End -->
  175. </SCRIPT>
  176.   </ccBodyContent>
  177.   <ccElementContent>
  178.   
  179.    <ccElementName></ccElementName>
  180.    <ccElementAction></ccElementAction>
  181.    
  182.   </ccElementContent>
  183.   <ccExtraData>
  184.  
  185.   </ccExtraData>
  186. </ccResource>