javascript
conversioni e utilità
italiano
english
Tabelle di conversione
scegli una GRANDEZZA
ACCELERAZIONE
ANGOLI
AREA
CALORE, entropia, etc.
ELETTRICITA' e MAGNET.
ENERGIA e LAVORO
FORZA
LUNGHEZZA
LUCE
MASSA e INERZIA
MOMENTO della FORZA
PERMEABILITA'
POTENZA
PRESSIONE
RADIOLOGIA
TEMPERATURA
TEMPO
VELOCITA'
VISCOSITA',dina., cine.
VOLUME, capac. portata
Fattori di conversione in PDF
SELEZIONA
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
V
W
Y
ALL LIST
sistema internazionale
multipli e sottomultipli
costanti fondamentali
unità fondamentali e derivate
tavola periodica
calcolatrice scientifica
compatibile IE NE
necessita immagine di fondo,
clicca qui
<HEAD> <script language=javascript> //<!-- // Javascript scientific calculator (4 March 1996) // (C) Copyright Rolf Howarth 1996 // rolf@insect.demon.co.uk var NDIGITS = 16; var STACKSIZE = 12; var value = 0; // current value in display var memory = GetCookie("CalcMemory"); // current value in memory if (!memory) memory = 0; var level = 0; // no. of items on stack var entered = true; // has value on display been 'entered'? var decimal = 0; // multiplier when entering after decimal point var fixed = 0; // force trailing zero display when entering decimals var exponent = false; // currently entering exponent? var inverse = false; // has the INV key been pressed? if (location.search) { // pass in value through command line value = location.search.substring(1,location.search.length); } function stackItem() { this.value = 0; this.op = ""; } function array(length) { this[0] = 0; for (i=0; i<length; ++i) { this[i] = 0; this[i] = new stackItem(); } this.length = length; } stack = new array(STACKSIZE); function push(value,op,prec) { if (level==STACKSIZE) return false; for (i=level;i>0; --i) { stack[i].value = stack[i-1].value; stack[i].op = stack[i-1].op; stack[i].prec = stack[i-1].prec; } stack[0].value = value; stack[0].op = op; stack[0].prec = prec; ++level; return true; } function pop() { if (level==0) return false; for (i=0;i<level; ++i) { stack[i].value = stack[i+1].value; stack[i].op = stack[i+1].op; stack[i].prec = stack[i+1].prec; } --level; return true; } function format(value) { var valStr = "" + value; if (valStr.indexOf("N")>=0 || (value == 2*value && value == 1+value)) return "Error "; var i = valStr.indexOf("e") if (i>=0) { var expStr = valStr.substring(i+1,valStr.length); if (i>11) i=11; // max 11 digits valStr = valStr.substring(0,i); if (valStr.indexOf(".")<0) valStr += "."; valStr += " " + expStr; } else { var valNeg = false; if (value < 0) { value = -value; valNeg = true; } var valInt = Math.floor(value); var valFrac = value - valInt; var prec = NDIGITS - (""+valInt).length - 1; // how many digits available after period if (! entered && fixed>0) prec = fixed; var mult = " 1000000000000000000".substring(1,prec+2); var frac = Math.floor(valFrac * mult + 0.5); valInt = Math.floor(Math.floor(value * mult + .5) / mult); if (valNeg) valStr = "-" + valInt; else valStr = "" + valInt; var fracStr = "00000000000000"+frac; fracStr = fracStr.substring(fracStr.length-prec, fracStr.length); i = fracStr.length-1; if (entered || fixed==0) { // remove trailing zeros unless fixed during entry. while (i>=0 && fracStr.charAt(i)=="0") --i; fracStr = fracStr.substring(0,i+1); } if (i>=0) valStr += "." + fracStr; // document.result.debugField.value = "prec "+prec+", mult "+mult+", frac "+frac; } return valStr; } function refresh() { var display = format(value); if (exponent) { if (expval<0) display += " " + expval; else display += " +" + expval; } if (display.indexOf(".")<0 && display != "Error ") { if (entered || decimal>0) display += '.'; else display += ' '; } display = " " + display; display = display.substring(display.length-NDIGITS-1,display.length); document.result.result.value = display; inverse = false; } function clearAll() { level = 0; clear(); } function clear() { exponent = false; value = 0; enter(); refresh(); } function evalx() { if (level==0) return false; op = stack[0].op; sval = stack[0].value; // alert("eval "+sval+op+value); if (op == "+") value = sval + value; else if (op == '-') value = sval - value; else if (op == '*') value = sval * value; else if (op == '/') value = sval / value; else if (op == 'pow') value = Math.pow(sval,value); pop(); if (op=='(') return false; return true; } function openp() { enter(); if (!push(0,'(',0)) { value = "NAN"; } refresh(); } function closep() { enter(); while (evalx()) ; refresh(); } function operator(op) { enter(); if (op=='+' || op=='-') prec = 1; else if (op=='*' || op=='/') prec = 2; else if (op=="pow") prec = 3; if (level>0 && prec <= stack[0].prec) evalx(); if (!push(value,op,prec)) { value = "NAN"; } refresh(); } function enter() { if (exponent) value = value * Math.exp(expval * Math.LN10); entered = true; exponent = false; decimal = 0; fixed = 0; } function equals() { enter() while (level>0) evalx(); refresh(); } function digit(n) { if (entered) { value = 0; digits = 0; entered = false; } if (n==0 && digits==0) { refresh(); return; } if (exponent) { if (expval<0) n = -n; if (digits < 3) { expval = expval * 10 + n; ++digits; refresh(); } return; } if (value<0) n = -n; if (digits < NDIGITS-1) { ++digits; if (decimal>0) { decimal = decimal * 10; value = value + (n/decimal); ++fixed; } else value = value * 10 + n; } refresh(); } function sign() { if (exponent) expval = -expval; else value = -value; refresh(); } function period() { if (entered) { value = 0; digits = 1; } entered = false; if (decimal == 0) { decimal = 1; } refresh(); } function exp() { if (entered || exponent) return; exponent = true; expval = 0; digits = 0; decimal = 0; refresh(); } function inv() { inverse = !inverse; } function func(f) { enter(); if (f=="1/x") value = 1/value; else if (f=="swap") { var tmp = value; value = stack[0].value; stack[0].value = tmp; } else if (f=='n!') { if (value<0 || value>200 || value != Math.round(value)) value = "NAN"; else { var n = 1; var i; for (i=1;i<=value;++i) n *= i; value = n; } } else if (f=="MR") value = memory; else if (f=="M+") { memory += value; SetCookie("CalcMemory", memory); } else if (f=="Min") { memory = value; SetCookie("CalcMemory", memory); } else if (inverse) { if (f=="sin") value = Math.asin(value)*180/Math.PI; else if (f=="cos") value = Math.acos(value)*180/Math.PI; else if (f=="tan") value = Math.atan(value)*180/Math.PI; else if (f=="log") value = Math.exp(value * Math.LN10); else if (f=="log2") value = Math.exp(value * Math.LN2); else if (f=="ln") value = Math.exp(value); else if (f=="sqrt") value = value*value; else if (f=="pi") value = Math.E; } else { if (f=="sin") value = Math.sin(value/180 * Math.PI); else if (f=="cos") value = Math.cos(value/180 * Math.PI); else if (f=="tan") value = Math.tan(value/180 * Math.PI); else if (f=="log") value = Math.log(value)/Math.LN10; else if (f=="log2") value = Math.log(value)/Math.LN2; else if (f=="ln") value = Math.log(value); else if (f=="sqrt") value = Math.sqrt(value); else if (f=="pi") value = Math.PI; } refresh(); } function hex() { location = "js-hcalc.htm?"+value; } ///////////// // // Cookie Functions - Second Helping (21-Jan-96) // Written by: Bill Dortch, hIdaho Design <bdortch@netw.com> // The following functions are released to the public domain. // function getCookieVal (offset) { var endstr = document.cookie.indexOf (";", offset); if (endstr == -1) endstr = document.cookie.length; return unescape(document.cookie.substring(offset, endstr)); } function GetCookie (name) { var arg = name + "="; var alen = arg.length; var clen = document.cookie.length; var i = 0; while (i < clen) { var j = i + alen; if (document.cookie.substring(i, j) == arg) return getCookieVal (j); i = document.cookie.indexOf(" ", i) + 1; if (i == 0) break; } return null; } // Function to create or update a cookie. // name - String object object containing the cookie name. // value - String object containing the cookie value. May contain // any valid string characters. // [expires] - Date object containing the expiration data of the cookie. If // omitted or null, expires the cookie at the end of the current session. // [path] - String object indicating the path for which the cookie is valid. // If omitted or null, uses the path of the calling document. // [domain] - String object indicating the domain for which the cookie is // valid. If omitted or null, uses the domain of the calling document. // [secure] - Boolean (true/false) value indicating whether cookie transmission // requires a secure channel (HTTPS). // function SetCookie (name, value) { var argv = SetCookie.arguments; var argc = SetCookie.arguments.length; var expires = (argc > 2) ? argv[2] : null; var path = (argc > 3) ? argv[3] : null; var domain = (argc > 4) ? argv[4] : null; var secure = (argc > 5) ? argv[5] : false; document.cookie = name + "=" + escape (value) + ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + ((path == null) ? "" : ("; path=" + path)) + ((domain == null) ? "" : ("; domain=" + domain)) + ((secure == true) ? "; secure" : ""); } function DeleteCookie (name) { var exp = new Date(); exp.setTime (exp.getTime() - 1); // This cookie is history var cval = GetCookie (name); document.cookie = name + "=" + cval + "; expires=" + exp.toGMTString(); } // // End of cookie functions ////////// // --> </script> </HEAD> <BODY onLoad="refresh()"> <center> <FORM name=result> <INPUT size=18 name=result onFocus="refresh(); this.blur();"> </FORM> <IMG SRC="scalc.gif" width=159 height=224 usemap="#map" border=0> <MAP name="map"> <AREA SHAPE=rect HREF="javascript:digit(0)" COORDS="12,191,32,209"> <AREA SHAPE=rect HREF="javascript:period()" COORDS="40,191,60,209"> <AREA SHAPE=rect HREF="javascript:exp()" COORDS="68,191,88,209"> <AREA SHAPE=rect HREF="javascript:sign()" COORDS="96,191,116,209"> <AREA SHAPE=rect HREF="javascript:equals()" COORDS="124,191,144,209"> <AREA SHAPE=rect HREF="javascript:digit(1)" COORDS="12,166,32,184"> <AREA SHAPE=rect HREF="javascript:digit(2)" COORDS="40,166,60,184"> <AREA SHAPE=rect HREF="javascript:digit(3)" COORDS="68,166,88,184"> <AREA SHAPE=rect HREF="javascript:operator('+')" COORDS="96,166,116,184"> <AREA SHAPE=rect HREF="javascript:operator('-')" COORDS="124,166,144,184"> <AREA SHAPE=rect HREF="javascript:digit(4)" COORDS="12,141,32,159"> <AREA SHAPE=rect HREF="javascript:digit(5)" COORDS="40,141,60,159"> <AREA SHAPE=rect HREF="javascript:digit(6)" COORDS="68,141,88,159"> <AREA SHAPE=rect HREF="javascript:operator('*')" COORDS="96,141,116,159"> <AREA SHAPE=rect HREF="javascript:operator('/')" COORDS="124,141,144,159"> <AREA SHAPE=rect HREF="javascript:digit(7)" COORDS="12,116,32,134"> <AREA SHAPE=rect HREF="javascript:digit(8)" COORDS="40,116,60,134"> <AREA SHAPE=rect HREF="javascript:digit(9)" COORDS="68,116,88,134"> <AREA SHAPE=rect HREF="javascript:clear()" COORDS="96,116,116,134"> <AREA SHAPE=rect HREF="javascript:clearAll()" COORDS="124,116,144,134"> <AREA SHAPE=rect HREF="javascript:openp()" COORDS="12,90,32,104"> <AREA SHAPE=rect HREF="javascript:closep()" COORDS="40,90,60,104"> <AREA SHAPE=rect HREF="javascript:func('Min')" COORDS="68,90,88,104"> <AREA SHAPE=rect HREF="javascript:func('MR')" COORDS="96,90,116,104"> <AREA SHAPE=rect HREF="javascript:func('M+')" COORDS="124,90,144,104"> <AREA SHAPE=rect HREF="javascript:operator('pow')" COORDS="12,65,32,79"> <AREA SHAPE=rect HREF="javascript:func('n!')" COORDS="40,65,60,79"> <AREA SHAPE=rect HREF="javascript:func('sqrt')" COORDS="68,65,88,79"> <AREA SHAPE=rect HREF="javascript:func('1/x')" COORDS="96,65,116,79"> <AREA SHAPE=rect HREF="javascript:func('swap')" COORDS="124,65,144,79"> <AREA SHAPE=rect HREF="javascript:inv()" COORDS="12,40,32,54"> <AREA SHAPE=rect HREF="javascript:func('sin')" COORDS="40,40,60,54"> <AREA SHAPE=rect HREF="javascript:func('cos')" COORDS="68,40,88,54"> <AREA SHAPE=rect HREF="javascript:func('tan')" COORDS="96,40,116,54"> <AREA SHAPE=rect HREF="javascript:func('pi')" COORDS="124,40,144,54"> <AREA SHAPE=rect HREF="javascript:func('log')" COORDS="12,15,32,29"> <AREA SHAPE=rect HREF="javascript:func('ln')" COORDS="40,15,60,29"> <AREA SHAPE=rect HREF="javascript:func('log2')" COORDS="68,15,88,29"> <AREA SHAPE=rect HREF="javascript:hex()" COORDS="96,15,116,29"> <AREA SHAPE=rect HREF="js-info.htm" COORDS="124,15,144,29"> </MAP> <!-- for more visit www.themeter.net --> </BODY>
seleziona tutto il codice ed utilizza
copia-incolla
per inserirlo nelle tue pagine
Copyright © 1999 -2010 THEmeter.net -Tutti i diritti riservati -
|
Home
|
Search
|
Disclaimer
|
E-mail
|
Donazioni
|
- www.THEmeter.net -- www.conversioni.it
-
(ver. # 23.03.08 )