Calculadora 3


<form name="Keypad" action>

<table>

<b>

<tr>

<td><table border="2" width="50" height="60" cellpadding="1" cellspacing="5">

<tr>

<td colspan="3" align="middle"><input name="ReadOut" size="24" value="0" width="100%"> </td>

<td </TD>&nbsp;</td>

<td><input name="btnClear" type="Button" value=" C " onClick="Clear()"> </td>

<td><input name="btnClearEntry" type="Button" value=" CE " onClick="ClearEntry()"> </td>

</tr>

<tr>

<td><input name="btnSeven" type="Button" value=" 7 " onClick="NumPressed(7)"> </td>

<td><input name="btnEight" type="Button" value=" 8 " onClick="NumPressed(8)"> </td>

<td><input name="btnNine" type="Button" value=" 9 " onClick="NumPressed(9)"> </td>

<td>&nbsp;</td>

<td><input name="btnNeg" type="Button" value=" +/- " onClick="Neg()"> </td>

<td><input name="btnPercent" type="Button" value=" % " onClick="Percent()"> </td>

</tr>

<tr>

<td><input name="btnFour" type="Button" value=" 4 " onClick="NumPressed(4)"> </td>

<td><input name="btnFive" type="Button" value=" 5 " onClick="NumPressed(5)"> </td>

<td><input name="btnSix" type="Button" value=" 6 " onClick="NumPressed(6)"> </td>

<td>&nbsp;</td>

<td align="middle"><input name="btnPlus" type="Button" value=" + "

onclick="Operation('+')"> </td>

<td align="middle"><input name="btnMinus" type="Button" value=" - "

onclick="Operation('-')"> </td>

</tr>

<tr>

<td><input name="btnOne" type="Button" value=" 1 " onClick="NumPressed(1)"> </td>

<td><input name="btnTwo" type="Button" value=" 2 " onClick="NumPressed(2)"> </td>

<td><input name="btnThree" type="Button" value=" 3 " onClick="NumPressed(3)"> </td>

<td>&nbsp;</td>

<td align="middle"><input name="btnMultiply" type="Button" value=" * "

onclick="Operation('*')"> </td>

<td align="middle"><input name="btnDivide" type="Button" value=" / "

onclick="Operation('/')"> </td>

</tr>

<tr>

<td><input name="btnZero" type="Button" value=" 0 " onClick="NumPressed(0)"> </td>

<td><input name="btnDecimal" type="Button" value=" . " onClick="Decimal()"> </td>

<td colspan="3">&nbsp;</td>

<td><input name="btnEquals" type="Button" value=" = " onClick="Operation('=')"> </td>

</tr>

</table>

</td>

</tr>

</table>

</b>

</form>

<font face="Verdana, Arial, Helvetica" size="2"><script LANGUAGE="JavaScript">

<!-- Begin

var FKeyPad = document.Keypad;

var Accum = 0;

var FlagNewNum = false;

var PendingOp = "";

function NumPressed (Num) {

if (FlagNewNum) {

FKeyPad.ReadOut.value = Num;

FlagNewNum = false;

}

else {

if (FKeyPad.ReadOut.value == "0")

FKeyPad.ReadOut.value = Num;

else

FKeyPad.ReadOut.value += Num;

}

}

function Operation (Op) {

var Readout = FKeyPad.ReadOut.value;

if (FlagNewNum && PendingOp != "=");

else

{

FlagNewNum = true;

if ( '+' == PendingOp )

Accum += parseFloat(Readout);

else if ( '-' == PendingOp )

Accum -= parseFloat(Readout);

else if ( '/' == PendingOp )

Accum /= parseFloat(Readout);

else if ( '*' == PendingOp )

Accum *= parseFloat(Readout);

else

Accum = parseFloat(Readout);

FKeyPad.ReadOut.value = Accum;

PendingOp = Op;

}

}

function Decimal () {

var curReadOut = FKeyPad.ReadOut.value;

if (FlagNewNum) {

curReadOut = "0.";

FlagNewNum = false;

}

else

{

if (curReadOut.indexOf(".") == -1)

curReadOut += ".";

}

FKeyPad.ReadOut.value = curReadOut;

}

function ClearEntry () {

FKeyPad.ReadOut.value = "0";

FlagNewNum = true;

}

function Clear () {

Accum = 0;

PendingOp = "";

ClearEntry();

}

function Neg () {

FKeyPad.ReadOut.value = parseFloat(FKeyPad.ReadOut.value) * -1;

}

function Percent () {

FKeyPad.ReadOut.value = (parseFloat(FKeyPad.ReadOut.value) / 100) * parseFloat(Accum);

}

// End -->

</script>


<p>&nbsp;</p>

</font>



Calculadora 2


3 parts to this script

=====================================================

PART 1

====================================================

<SCRIPT>

<!--


var opStack = new Array(4)

opStack[0] = 0

opStack[1] = ''

opStack[2] = ''

opStack[3] = ''

function start()

{

document.PAD.SUM.value= "0"

}

function KeyinNum()

{

if (opStack[0] >= 2) { opStack[0] = 3 } else { opStack[0] = 1 }

opStack[opStack[0]] = '' + document.PAD.SUM.value

}

function display ()

{

var sum = parseFloat(opStack[1])

var huge = Math.pow(10,14)

sum = Math.round (sum * huge) / huge

document.PAD.SUM.value = '' + sum

}

function resetNum ()

{

opStack[0] = 0

opStack[1] = 0

document.PAD.CAL.value = ''

document.PAD.SUM.value = '0'

}

function entry (x)

{

if (opStack[0] == -1) { opStack[0] = 1; opStack[1] = ''}

if (opStack[0] == 0) { opStack[0] = 1; opStack[1] = ''}

if (opStack[0] == 2) { opStack[0] = 3; opStack[3] = ''}

var result = result = opStack[opStack[0]]

if (result == '0') { result = '' }

//---------------------------------------------------------------------

if (x>='1' && x<='9') { result = '' + result + x }

else if (x == 'P') { result = '' + Math.PI }

else if (x == '0') { if (result != '') result = '' + result + '0' }

else if (x == 'B') { if (result != '') result = result.substring(0, result.length - 1) }

else if (x == '.') {

if (result != '')

{ if (result.indexOf(".") == -1) result += "." }

else

{ result = '0.' }

}

//-----------------------------------------------------------------

if (result =='') result = '0'

opStack[opStack[0]] = result

document.PAD.SUM.value = result

}

function neg()

{

if (opStack[0] != 2 && opStack[0] != 0)

{

opStack[0] = Math.abs(opStack[0])

var result = opStack[opStack[0]]

if (result != '0' && result != '')

{

if (result.charAt(0) == '-')

{ result = result.substring(1, result.length) }

else

{ result = '-' + result }

opStack[opStack[0]] = result

document.PAD.SUM.value = result

}

}

}

function calc1 (x)

{

var opFlag = opStack[0]

if (opFlag == -1 || opFlag == 1)

{

count(x)

}

else if (opFlag == 3)

{

opStack[1] = '' + eval(opStack[1] + opStack[2] + opStack[3])

count(x)

}

}

function count (x)

{

if (x == 'Si') { opStack[1] = '' + Math.sin (opStack[1]) }

else if (x == 'aS') { opStack[1] = '' + Math.asin(opStack[1]) }

else if (x == 'Co') { opStack[1] = '' + Math.cos (opStack[1]) }

else if (x == 'aC') { opStack[1] = '' + Math.acos(opStack[1]) }

else if (x == 'Ta') { opStack[1] = '' + Math.tan (opStack[1]) }

else if (x == 'aT') { opStack[1] = '' + Math.atan(opStack[1]) }

else if (x == '¡Ô') { opStack[1] = '' + Math.pow (opStack[1],.5) }

else if (x == '^2') { opStack[1] = '' + Math.pow (opStack[1], 2) }

else if (x == '^3') { opStack[1] = '' + Math.pow (opStack[1], 3) }

else if (x == '^4') { opStack[1] = '' + Math.pow (opStack[1], 4) }

else if (x == 'AB') { opStack[1] = '' + Math.abs (opStack[1]) }

else if (x == '¡×') { }

document.PAD.CAL.value = ''

opStack[0] = -1

display()

document.PAD.SUM.focus()

document.PAD.SUM.select()

}

function calc2 (x)

{

var opFlag = opStack[0]

if (opFlag != 2)

{

if (opFlag == 3)

{

opStack[1]=''+eval(opStack[1]+opStack[2]+opStack[3])

display()

}

opStack[0] = 2

opStack[2] = x

document.PAD.CAL.value = x

document.PAD.SUM.focus()

document.PAD.SUM.select()

}

}

function fra()

{

var i

var j = 1

var k = document.PAD.SUM.value

if (k >= 70)

{opStack[1] = 0; document.PAD.SUM.value = "---Error---"; return}

for (i = 1; i <= k; i++)

{

j = j * i

}

opStack[1] = document.PAD.SUM.value = j

document.PAD.SUM.focus()

document.PAD.SUM.select()

}

function TurnOff()

{

var ask = confirm("This will close the window, continue?")

if (ask == true) {window.close()}

else {return}

}

//-->

</SCRIPT>

==============================================================

PART 2

===========================================================

<BODY ONLOAD="start()">


===============================================================

PART 3 - put this where you want the calculator to show

================================================================

<!-- --><FORM NAME="PAD">

<TABLE BORDER>

<TR><TD COLSPAN=8>

<INPUT NAME="CAL" TYPE="TEXT" SIZE=1 VALUE="">

Result:

<INPUT NAME="SUM" TYPE="TEXT" SIZE=36 VALUE="" onChange="KeyinNum()">

<TR>

<TD><INPUT TYPE="BUTTON" VALUE="C" onClick="resetNum()" WIDTH=100>

<TD><INPUT TYPE="BUTTON" VALUE="OFF" onClick="TurnOff()" WIDTH=100>

<TD><INPUT TYPE="BUTTON" VALUE="Square" onClick="calc1('^2')" WIDTH=100>

<TD><INPUT TYPE="BUTTON" VALUE="X !" onClick="fra()" WIDTH=100>

<TR>

<TD><INPUT TYPE="BUTTON" VALUE="1" onClick="entry('1')" WIDTH=100>

<TD><INPUT TYPE="BUTTON" VALUE="2" onClick="entry('2')" WIDTH=100>

<TD><INPUT TYPE="BUTTON" VALUE="3" onClick="entry('3')" WIDTH=100>

<TD><INPUT TYPE="BUTTON" VALUE="+" onClick="calc2('+')" WIDTH=100>

<TR>

<TD><INPUT TYPE="BUTTON" VALUE="4" onClick="entry('4')" WIDTH=100>

<TD><INPUT TYPE="BUTTON" VALUE="5" onClick="entry('5')" WIDTH=100>

<TD><INPUT TYPE="BUTTON" VALUE="6" onClick="entry('6')" WIDTH=100>

<TD><INPUT TYPE="BUTTON" VALUE="-" onClick="calc2('-')" WIDTH=100>

<TR>

<TD><INPUT TYPE="BUTTON" VALUE="7" onClick="entry('7')" WIDTH=100>

<TD><INPUT TYPE="BUTTON" VALUE="8" onClick="entry('8')" WIDTH=100>

<TD><INPUT TYPE="BUTTON" VALUE="9" onClick="entry('9')" WIDTH=100>

<TD><INPUT TYPE="BUTTON" VALUE="X" onClick="calc2('*')" WIDTH=100>

<TR>

<TD><INPUT TYPE="BUTTON" VALUE="0" onClick="entry('0')" WIDTH=100>

<TD><INPUT TYPE="BUTTON" VALUE="." onClick="entry('.')" WIDTH=100>

<TD><INPUT TYPE="BUTTON" VALUE="=" onClick="calc1('=')" WIDTH=100>

<TD><INPUT TYPE="BUTTON" VALUE="÷" onClick="calc2('/')" WIDTH=100>

<TR>

<TD><INPUT TYPE="BUTTON" VALUE="Backspace" onClick="entry('B')" WIDTH=100>

<TD><INPUT TYPE="BUTTON" VALUE="SQRT" onClick="calc1('¡Ô')" WIDTH=100>

<TD><INPUT TYPE="BUTTON" VALUE="Pi" onClick="entry('P')" WIDTH=100>

<TD><INPUT TYPE="BUTTON" VALUE="+/-" onClick="neg()" WIDTH=100>

</TABLE>

</FORM><!-- -->



Calculadora 1


<html><head><title>Calculadora</title><SCRIPT LANGUAGE="JavaScript">

<!--


var wynik=0, op=0, nowe=0, nowe2=0, done=1, oset=0, kropka, temp;


function reset(value)

{

document.form1.ekran.value = value;

wynik = 0,

op = 0,

nowe = 0,

nowe2 = 0;

done = 1;

oset = 0;

}


function wspolna(new_temp)

{

kropka = 1;


if(nowe || done) {

nowe = 0;

done = 0;

temp = new_temp;

}

{

if (temp.indexOf(".")!=-1) {

kropka=0;

}

}

}


function button(ktory,ktory2)

{


temp = document.form1.ekran.value;


if(ktory2=='.') {

wspolna('0');

if(kropka==1) {

temp += ktory2;

document.form1.ekran.value = temp;

oset = 0;

}

}


if(ktory>=0 && ktory<=9) {

wspolna('');

if(temp==0 && kropka==1) temp='';

temp += ktory;

document.form1.ekran.value = temp;

oset = 1;

}


if(ktory2=='-' || ktory2=='+' || ktory2=='/' || ktory2=='*') {

if(nowe) op = ktory2

else {

if(!nowe2) {

op = ktory2;

wynik = temp;

nowe2=1;

}

else {

wynik = eval(wynik + op + temp);

op = ktory2;

document.form1.ekran.value = wynik;

}

oset=0;

nowe = 1;

}

}


if(ktory2=='1/x' ) { wynik = eval(1 / temp) ; reset(wynik); }


if(ktory2=='sqrt') { wynik = Math.sqrt(temp); reset(wynik); }


if(ktory2=='exp' ) { wynik = Math.exp(temp) ; reset(wynik); }


if(ktory2=='+/-') document.form1.ekran.value = eval(-temp);


if(ktory2=='=' && oset && op!='0') reset(eval(wynik + op + temp));


if (ktory2=='C') reset(0);


if(document.form1.ekran.value[0] == '.')

document.form1.ekran.value = '0' + document.form1.ekran.value;


}

//-->

</SCRIPT>

<p>

<!-- inserir o código listado abaixo na seção BODY da sua página html --> <body bgcolor="black"><center><i><font face="arial" color="white" size="2">

Obrigado por usar nossos serviços</font></i>

<form name="form1">

<TABLE bgcolor="#FF6600">

<TR>

<TD>

<TABLE BORDER=0 cellspacing=3 cellpadding=1 bgcolor="#FF9933">

<TR align=center bgcolor="#FF6600">

<TD colspan=5>

<input type="text" name="ekran" value="0">

</TD>

</TR>

<TR align=center bgcolor="#FF6600">

<TD colspan=4>

<B>

<font color="Black" face="Georgia, Times New Roman, Times, serif" size="3">

Calculadora

</font>

</B>

</TD>

<TD>

<input type="button" name="C" value=" C " onClick="button(11,'C')">

</TD>

</TR>

<TR align=center bgcolor="#FF6600">

<TD>

<input type="button" name="7" value=" 7 " onclick="button(7 ,'')">

</TD>

<TD>

<input type="button" name="8" value=" 8 " onclick="button(8 ,'')">

</TD>

<TD>

<input type="button" name="9" value=" 9 " onclick="button(9 ,'')">

</TD>

<TD>

<input type="button" name="/" value=" / " onclick="button(11,'/')">

</TD>

<TD>

<input type="button" name="sqrt" value="V¯¯" onClick="button(11,'sqrt')">

</TD>

</TR>

<TR align=center bgcolor="#FF6600">

<TD>

<input type="button" name="4" value=" 4 " onClick="button(4,'')">

</TD>

<TD>

<input type="button" name="5" value=" 5 " onClick="button(5,'')">

</TD>

<TD>

<input type="button" name="6" value=" 6 " onClick="button(6,'')">

</TD>

<TD>

<input type="button" name="*" value=" * " onclick="button(11,'*')">

</TD>

<TD>

<input type="button" name="exp" value="exp" onClick="button(11,'exp')">

</TD>

</TR>

<TR align=center bgcolor="#FF6600">

<TD>

<input type="button" name="1" value=" 1 " onclick="button(1,'')">

</TD>

<TD>

<input type="button" name="2" value=" 2 " onclick="button(2,'')">

</TD>

<TD>

<input type="button" name="3" value=" 3 " onclick="button(3,'')">

</TD>

<TD>

<input type="button" name="-" value=" - " onclick="button(11,'-')">

</TD>

<TD>

<input type="button" name="1/x" value="1/x " onClick="button(11,'1/x')">

</TD>

</TR>

<TR align=center bgcolor="#FF6600">

<TD>

<input type="button" name="0" value=" 0 " onclick="button(0,'')">

</TD>

<TD>

<input type="button" name="+/-" value=" +/- " onClick="button(11,'+/-')">

</TD>

<TD>

<input type="button" name="." value=" , " onclick="button(11,'.')">

</TD>

<TD>

<input type="button" name="+" value=" + " onclick="button(11,'+')">

</TD>

<TD>

<input type="button" name="=" value=" = " onclick="button(11,'=')">

</TD>

</TR>

</TABLE>

</TD>

</TR>

</TABLE>

</form>

</head>

<FORM>

<INPUT TYPE="button" NAME="Button"

VALUE="Fechar" ONCLICK="window.close()">

</FORM></center></body></html>


AjaxLib

Descrição: Pequena ferramenta que permite trabalhar com a metodologia AJAX de forma simplificada. Compatíel com IE6, Opera 8, Firefox 1+, Mozilla 1.3+ e Safari 1+

// AJAXLib v. 1.0
// author: Jacek Karaszewski, http://www.karaszewski.com/tools/ajaxlib/
// licenced under Creative Commons Attribution 2.5 License

// public

// function loadXMLDoc(xml_url, function_name, ignore_white)
function loadXMLDoc(url, callFunc, ignoreWhite) {
functionToCall = callFunc;
stripWS = ignoreWhite;
xmlRequestObj = window.XMLHttpRequest?new XMLHttpRequest():new ActiveXObject("Microsoft.XMLHTTP")
xmlRequestObj.onreadystatechange = proccessXML;
xmlRequestObj.open("GET", url, true);
xmlRequestObj.send(null);
}


// private

function is_ws(nod) {
return !(/[^\t\n\r ]/.test(nod.data));
}

function findWhiteSpace(node, nodeNo) {
for (i=0; i if (node.childNodes[i].nodeType == 3 && is_ws(node.childNodes[i])) {
nodesToDelete[nodesToDelete.length] = node.childNodes[i]
}
if (node.childNodes[i].hasChildNodes()) {
findWhiteSpace(node.childNodes[i], i);
}
}
node = node.parentNode;
i = nodeNo;
}

function stripWhiteSpace(node) {
nodesToDelete = Array();
findWhiteSpace(node, 0);
for(i=nodesToDelete.length-1;i>=0;i--) {
nodeRef = nodesToDelete[i];
nodeRef.parentNode.removeChild(nodeRef)
}
}

function proccessXML() {
if (xmlRequestObj.readyState == 4 && (xmlRequestObj.status == 200 || xmlRequestObj.status == 304)) {
if(stripWS) {
stripWhiteSpace(xmlRequestObj.responseXML);
}
resultXML = xmlRequestObj.responseXML;
functionToCall()
}
}

Expressões de loops do while

Usa-se o do while quando se quer que um trecho de código se repita n vezes, mas executa o bloco de código antes da verificação da condição.





<html>  <body>    <script>    numero = 0    do  {   numero++  }  while (numero < 10)    alert(numero)    </script>    </body>  </html>  

A diferença de ter um do na frente é que o código será executado antes da condição ser verificada. Execute exemplo e verifique se o resultado é diferente do while normal.

Expressões de loops while

Usa-se o while quando se quer que um trecho de código se repita n vezes, com condicional bem simples.





<html>  <body>    <script>    numero = 0    while (numero < 10)  {   numero++  }    alert(numero)    </script>    </body>  </html>  

Enquanto a condição for verdadeira, o bloco será executado. Note que dentro do bloco estamos executando um código que fará a condição ser falsa depois de algumas repetições. Se não fizéssemos a condição ficar falsa, ele entraria no que chamamos de loop infinito, o que não é nada bom.

Expressões de loops for

Usa-se o for quando se quer que um trecho de código se repita n vezes.





<html>  <body>    <script>    a = 2    for (i = 0; i < 2; i++)  {   a = i  }    alert(a)    </script>    </body>  </html>  

A novidade é a linha de código acima mostrada em vermelho. Vamos analizá-la.




for (i = 0; i < 2; i++)

Utilizamos uma variável temporária chamada i. Inicializamos ela com valor igual a zero.




for (i = 0; i < 2; i++)

O bloco do meio funciona como um if. Se o valor de i for menor que 2, ele entra no loop.




for (i = 0; i < 2; i++)

A última parte diz o que fazer com a variável i. Neste caso a cada repetição, estamos incrementando o valor de i. Se não fizéssemos isto, a condição anterior (i < 2) sempre seria verdadeira, e entraríamos em um loop infinito, pois o valor de i sempre seria menor que dois.