Subversion Repositories wimsdev

Rev

Rev 2093 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

  1. <html>
  2. <head>
  3. <script language="JavaScript">
  4. function round(val)
  5. {
  6.         return(Math.round(val*10000000)/10000000);
  7. }
  8.  
  9. PI = 3.141592654;
  10.  
  11. function pie()
  12. {
  13.         document.keypad.display.value = PI;
  14. }
  15.  
  16. function MakeArray(n){
  17.         this.length=n;
  18.         for(var i=1; i<=n; i++) this[i]=0;
  19.    return this
  20. }
  21.  
  22. link = new MakeArray(5);
  23.  
  24. function enter(num)
  25. {
  26.         document.keypad.display.value += num;
  27. }
  28.  
  29. function calculate(sign)
  30. {
  31.         var temp = document.keypad.display.value * 1;
  32.         document.keypad.display.value = "";
  33.         document.keypad.list.value = temp;
  34.         link[1] = temp;
  35.         if (sign == "/") {link[2] = "/"; document.keypad.list.value += " / ";}
  36.         if (sign == "*") {link[2] = "*"; document.keypad.list.value += " * ";}
  37.         if (sign == "-") {link[2] = "-"; document.keypad.list.value += " - ";}
  38.         if (sign == "+") {link[2] = "+"; document.keypad.list.value += " + ";}
  39.         if (sign == "p") {link[2] = "p"; document.keypad.list.value += " ^ ";}
  40. }
  41.  
  42. function power()
  43. {
  44.         temp = 1;
  45.         n = link[3];
  46.         for(var i=1; i<=n; i++) temp *= link[1];
  47.         return(temp);
  48. }
  49.  
  50. function equal()
  51. {
  52.         if (link[2]) {
  53.                 if (document.keypad.display.value != "") {
  54.                         var temp = document.keypad.display.value * 1;
  55.                         document.keypad.list.value += temp;
  56.                         link[3] = temp;
  57.                         if (link[2] == "/") {res = link[1] / link[3]; document.keypad.display.value = round(res)}
  58.                         if (link[2] == "*") {res = link[1] * link[3]; document.keypad.display.value = round(res)}
  59.                         if (link[2] == "-") {res = link[1] - link[3]; document.keypad.display.value = round(res)}
  60.                         if (link[2] == "+") {res = link[1] + link[3]; document.keypad.display.value = round(res)}
  61.                         if (link[2] == "p") {document.keypad.display.value = round( power() )}
  62.                         link[1]=0; link[2]=0; link[3]=0;
  63.                 }
  64.         }
  65. }
  66.  
  67. function calc(code)
  68. {
  69.         var temp = document.keypad.display.value * 1;
  70.         if (code == 1) {temp1 = Math.sin(temp*PI/180); document.keypad.list.value = "sin "}
  71.         if (code == 2) {temp1 = Math.cos(temp*PI/180); document.keypad.list.value = "cos "}
  72.         if (code == 3) {temp1 = Math.tan(temp*PI/180); document.keypad.list.value = "tan "}
  73.         if (code == 4) {temp1 = Math.sqrt(temp); document.keypad.list.value = "sqrt "}
  74.         if (code == 5) {temp1 = Math.log(temp); document.keypad.list.value = "ln "}
  75.         if (code == 6) {temp1 = 1/temp; document.keypad.list.value = "1/x, x="}
  76.         if (code == 7) {temp1 = temp * temp; document.keypad.list.value = "x*x, x="}
  77.         document.keypad.list.value += temp;
  78.         document.keypad.display.value = round(temp1);
  79. }
  80.  
  81. function fsolve()
  82. {
  83.         var a = document.keypad.c1.value*1;
  84.         var b = document.keypad.c2.value*1;
  85.         var c = document.keypad.c3.value*1;
  86.         if (a==0) {document.keypad.list.value = "            Not a Quadratic";
  87.                      document.keypad.display.value = "                 Equation"}
  88.         else { x1 = (b*b-4*a*c);
  89.                 if ( x1 < 0) {document.keypad.list.value = "           Imaginary Roots";
  90.                                   temp = (Math.sqrt(Math.abs(x1)))/(2*a);
  91.                                   x2 = round(-b/(2*a)) + "+/- " + round(temp) + "i";
  92.                                   document.keypad.display.value = x2}
  93.                 else {
  94.                         var x1 = (-b + Math.sqrt(b*b-4*a*c)) / (2*a);
  95.                         var x2 = (-b - Math.sqrt(b*b-4*a*c)) / (2*a);
  96.                         document.keypad.list.value = "x1 = " + round(x1);
  97.                         document.keypad.display.value = "x2 = " + round(x2);
  98.                 }
  99.         }
  100. }
  101. function change()
  102. {
  103.         var temp = document.keypad.display.value;
  104.         if (temp.substring(0,1) == "-") {document.keypad.list.value = "";
  105.                                                    document.keypad.display.value = 0 - document.keypad.display.value * 1}
  106.         if (temp.substring(0,1) != "-") {document.keypad.list.value = "";
  107.                                                    document.keypad.display.value = "-" + temp.substring(0,temp.length)}
  108. }
  109.  
  110. function eraser()
  111. {
  112.         document.keypad.list.value = "                                  ";
  113.         document.keypad.display.value = "";
  114.         document.keypad.c1.value = "";
  115.         document.keypad.c2.value = "";
  116.         document.keypad.c3.value = "";
  117.         link[1]=0; link[2]=0; link[3]=0;
  118. }
  119.  
  120. function backer()
  121. {
  122.         var temp = document.keypad.display.value;
  123.         document.keypad.display.value = temp.substring(0,temp.length*1 -1);
  124. }
  125.  
  126. var memory = 0;
  127. function mem(val)
  128. {
  129.         if (val == 1 ) {document.keypad.list.value = "          --> in het geheugen";
  130.                             memory = document.keypad.display.value * 1}
  131.         if (val == -1) {document.keypad.display.value = memory}
  132.         if (val == 0 ) {document.keypad.list.value = "          geheugen gewist";
  133.                             document.keypad.display.value = ""; memory = 0}
  134. }
  135.  
  136. function message()
  137. {
  138. alert('\n\nSend your comments and suggestions to:\n\n   ----> aag4@lehigh.edu <----');
  139. }
  140.  
  141. function travel(link)
  142. {
  143. window.open(link,"calculator","toolbar=1,location=1,status=1,scrollbars=1,directories=1,copyhistory=1,menubar=1,resizable=1")
  144. }
  145.  
  146. function eraser2()
  147. {
  148.         var ans = confirm('\nDo you want to clear the entire CALCpad?\n');
  149.         if (ans) {screen = document.notes.junk.value; document.notes.junk.value = "";}
  150. }
  151.  
  152. function copy()
  153. {
  154. document.notes.junk.value = document.keypad.list.value+"\n"+document.keypad.display.value+"\n"+document.notes.junk.value;
  155. }
  156.  
  157. function help()
  158. {
  159.         screen = document.notes.junk.value;
  160.         msg1 = "Following are some of the\ncalculator functions:\n";
  161.         msg2 = "\n(<-> M) - Erase Memory Contents\n(--> M) - Memory In\n(<-- M) - Memory Out";
  162.         msg3 = "\n(<--)   - Erase last character\n(x^y)   - X to the power of Y";
  163.         msg4 = "\n\nTo Go Back, click 'Restore CALCpad'";
  164.         document.notes.junk.value = "";
  165.         document.notes.junk.value = msg1 + msg2 + msg3 + msg4;
  166. }
  167.  
  168. function restore()
  169. {
  170.         document.notes.junk.value = "";
  171.         document.notes.junk.value = screen;    
  172. }
  173. </script>
  174.  
  175.  
  176. </head>
  177. <body scroll="no" border="no" style="border-style: groove; border-width: 0">
  178. <div align="center">
  179. <table summary="" border="0">
  180.     <td valign="middle" align="center" rowspan="2">
  181.     <form name="keypad">
  182.  
  183.       <div align="center"><center><table summary="" border="6" cellspacing="2" cellpadding="3">
  184.  
  185.         <tr>
  186.  
  187.           <td valign="middle" align="center" colspan="9" bgcolor="yellow"><font SIZE="4" COLOR="#800040"><i><b>Calculator</b></i></font>
  188.           <br>
  189.             <input type="button" name="" value="exit" onclick="window.close()" /> </p>
  190.  
  191.           </td>
  192.                                                            
  193.         </tr>
  194.  
  195.         <tr>
  196.  
  197.           <td valign="middle" align="center" colspan="6"><input type="text" name="list" size="22" value="              " /> </td>
  198.  
  199.           <td valign="middle" align="center" colspan="3"><input type="button" name="" value="       delete      " onclick="eraser()" /></td>
  200.  
  201.         </tr>
  202.  
  203.         <tr>
  204.  
  205.           <td valign="middle" align="center" colspan="6"><input type="text" name="display" size="22" value="" /></td>
  206.  
  207.           <td valign="middle" align="center" colspan="2"><input type="button" name="" value="       =      " onclick="equal()"  /></td>
  208.  
  209.           <td valign="middle" align="center"><input type="button" name="" value="  &lt;--  " onclick="backer()"  /></td>
  210.  
  211.         </tr>
  212.  
  213.         <tr>
  214.  
  215.           <td valign="middle" align="center"><input type="button" name="" value="  1  " onclick="enter(1)" /></td>
  216.  
  217.           <td valign="middle" align="center"><input type="button" name="" value="  2  " onclick="enter(2)" /></td>
  218.  
  219.           <td valign="middle" align="center"><input type="button" name="" value="  3  " onclick="enter(3)" /></td>
  220.  
  221.           <td>&nbsp;</td>
  222.  
  223.           <td valign="middle" align="center"><input type="button" name="" value="   /   " onclick="calculate('/')" /></td>
  224.  
  225.           <td>&nbsp;</td>
  226.  
  227.           <td valign="middle" align="center"><input type="button" name="" value=" sin " onclick="calc(1)" /></td>
  228.  
  229.           <td valign="middle" align="center"><input type="button" name="" value=" x½ " onclick="calc(4)" /></td>
  230.  
  231.           <td valign="middle" align="center"><input type="button" name="" value="&lt;-&gt;M" onclick="mem(0)" /></td>
  232.  
  233.         </tr>
  234.  
  235.         <tr>
  236.  
  237.           <td valign="middle" align="center"><input type="button" name="" value="  4  " onclick="enter(4)" /></td>
  238.  
  239.           <td valign="middle" align="center"><input type="button" name="" value="  5  " onclick="enter(5)" /></td>
  240.  
  241.           <td valign="middle" align="center"><input type="button" name="" value="  6  " onclick="enter(6)" /></td>
  242.  
  243.           <td>&nbsp;</td>
  244.  
  245.           <td valign="middle" align="center"><input type="button" name="" value="   *   " onclick="calculate('*')" /></td>
  246.  
  247.           <td>&nbsp;</td>
  248.  
  249.           <td valign="middle" align="center"><input type="button" name="" value="cos" onclick="calc(2)" /></td>
  250.  
  251.           <td valign="middle" align="center"><input type="button" name="" value="  x² " onclick="calc(7)" /></td>
  252.  
  253.           <td valign="middle" align="center"><input type="button" name="" value="--&gt; M" onclick="mem(1)" /></td>
  254.  
  255.         </tr>
  256.  
  257.         <tr>
  258.  
  259.           <td valign="middle" align="center"><input type="button" name="" value="  7  " onclick="enter(7)" /></td>
  260.  
  261.           <td valign="middle" align="center"><input type="button" name="" value="  8  " onclick="enter(8)" /></td>
  262.  
  263.           <td valign="middle" align="center"><input type="button" name="" value="  9  " onclick="enter(9)" /></td>
  264.  
  265.           <td>&nbsp;</td>
  266.  
  267.           <td valign="middle" align="center"><input type="button" name="" value="   -   " onclick="calculate('-')" /></td>
  268.  
  269.           <td>&nbsp;</td>
  270.  
  271.           <td valign="middle" align="center"><input type="button" name="" value="tan " onclick="calc(3)" /></td>
  272.  
  273.           <td valign="middle" align="center"><input type="button" name="" value="1/x " onclick="calc(6)" /></td>
  274.  
  275.           <td valign="middle" align="center"><input type="button" name="" value="&lt;-- M" onclick="mem(-1)" /></td>
  276.  
  277.         </tr>
  278.  
  279.         <tr>
  280.  
  281.           <td valign="middle" align="center"><input type="button" name="" value="  0  " onclick="enter(0)" /></td>
  282.  
  283.           <td valign="middle" align="center"><input type="button" name="" value="dot" onclick="enter('.')" /></td>
  284.  
  285.           <td valign="middle" align="center"><input type="button" name="" value=" +|- " onclick="change()" /></td>
  286.  
  287.           <td>&nbsp;</td>
  288.  
  289.           <td valign="middle" align="center"><input type="button" name="" value="  +   " onclick="calculate('+')" /></td>
  290.  
  291.           <td>&nbsp;</td>
  292.  
  293.           <td valign="middle" align="center"><input type="button" name="" value="  pi " onclick="pie()" /></td>
  294.  
  295.           <td valign="middle" align="center"><input type="button" name="" value=" Ln " onclick="calc(5)" /></td>
  296.  
  297.           <td valign="middle" align="center"><input type="button" name="" value=" x^y  " onclick="calculate('p')" /></td>
  298.  
  299.         </tr>
  300.        
  301.         </table>
  302.     </form>
  303. </table>
  304. </div>
  305. </body>
  306. </html>
  307.  
  308.  
  309.