Oppure

Loading
29/10/09 16:13
oretovalley
Ciao a tutti sto facendo una calcolatrice utilizzando javascript e fin qui tutto bene, ma vorrei capire come evitare la concatenazione di stringhe, ed eseguire invece una somma fra numeri, utilizzando appunto il semplice algoritmo (valore1 * 10) + valore2, piuttosto che concatenarlo, soprattutto perchè nella somma, io devo sommare interi e non stringhe, come posso fare?

Ecco il codice che uso per ora:

<html>
	<head><title>Calcolatrice</title></head>
	<script type=text/javascript>
		function inserisci(valore) {
			if(calcolatrice.barra.value == 0 || calcolatrice.barra.value == "") {
				calcolatrice.barra.value = valore;
			} else {
				calcolatrice.barra.value = calcolatrice.barra.value + valore;
			}
		}
	</script>
	<body>
		<form name = 'calcolatrice'>
			<input type='text' name ='barra' size = 9 value = 0>
			<br>	
			<input type='button' value='1' onclick='inserisci(this.value);'>
			<input type='button' value='2' onclick='inserisci(this.value);'>
			<input type='button' value='3' onclick='inserisci(this.value);'>
			<input type='button' value='+'>
			<br>
			<input type='button' value='4' onclick='inserisci(this.value);'>
			<input type='button' value='5' onclick='inserisci(this.value);'>
			<input type='button' value='6' onclick='inserisci(this.value);'>
			<input type='button' value='-'>
			<br>
			<input type='button' value='7' onclick='inserisci(this.value);'>
			<input type='button' value='8' onclick='inserisci(this.value);'>
			<input type='button' value='9' onclick='inserisci(this.value);'>
			<input type='button' value='*'>			
			<br>
			<input type='button' value='C' onclick='calcolatrice.barra.value=0;'>
			<input type='button' value='0' onclick='inserisci(this.value);'>
			<input type='button' value='.'>
			<input type='button' value='/'>
		</form>
	</body>
</html>

aaa
30/10/09 11:42
NewAge
In quella calcolatrice c'è praticamente solo l'html, comunque se vuoi compiere un'operazione usa:

variabile += numero;

e a seconda dell'operazione cambia il segno.

Ad es.

variabile *= numero;
variabile -= numero;
aaa
30/10/09 15:16
oretovalley
ho risolto :) ecco il codice della calcolatrice funzionante:

<html>
	<head><title>Calcolatrice</title></head>
	<script type=text/javascript>
		var temp;
		var operazione = "";
		function aggiungi(valore) {
			if(calcolatrice.barra.value == 0 || calcolatrice.barra.value == "") {
				calcolatrice.barra.value = valore;
			} else {						
				calcolatrice.barra.value = (parseInt(calcolatrice.barra.value) * 10)  + parseInt(valore);
			}
		}
		
		function somma() {
			temp = calcolatrice.barra.value;
			calcolatrice.barra.value = 0;
			operazione = "Somma";			
		}
		
		function sottrazione() {
			temp = calcolatrice.barra.value;
			calcolatrice.barra.value = 0;
			operazione = "Sottrazione";	
		}
		
		function moltiplicazione() {
			temp = calcolatrice.barra.value;
			calcolatrice.barra.value = 0;
			operazione = "Moltiplicazione";	
		}
		
		function divisione() {
			temp = calcolatrice.barra.value;
			calcolatrice.barra.value = 0;
			operazione = "Divisione";	
		}
		
		function risultato() {
			if(operazione == "Somma") {
				calcolatrice.barra.value = parseInt(calcolatrice.barra.value) + parseInt(temp);
				operazione = "";
			} else if(operazione == "Sottrazione") {
				calcolatrice.barra.value = parseInt(temp) - parseInt(calcolatrice.barra.value);
				operazione = "";
			} else if(operazione == "Moltiplicazione") {
				calcolatrice.barra.value = parseInt(temp) * parseInt(calcolatrice.barra.value);
				operazione = "";
			} else if(operazione == "Divisione") {
				calcolatrice.barra.value = parseInt(temp) / parseInt(calcolatrice.barra.value);
				operazione = "";
			}
		}
	</script>
	<body>
		<form name = 'calcolatrice'>
			<input type='text' name ='barra' size = 18 value = 0>
			<br>	
			<input type='button' value='7' onclick='aggiungi(this.value);'>
			<input type='button' value='8' onclick='aggiungi(this.value);'>
			<input type='button' value='9' onclick='aggiungi(this.value);'>
			<input type='button' value='+' onclick='somma();'>
			<br>
			<input type='button' value='4' onclick='aggiungi(this.value);'>
			<input type='button' value='5' onclick='aggiungi(this.value);'>
			<input type='button' value='6' onclick='aggiungi(this.value);'>
			<input type='button' value='-' onclick='sottrazione();'>
			<br>			
			<input type='button' value='1' onclick='aggiungi(this.value);'>
			<input type='button' value='2' onclick='aggiungi(this.value);'>
			<input type='button' value='3' onclick='aggiungi(this.value);'>
			<input type='button' value='*' onclick='moltiplicazione();'>			
			<br>
			<input type='button' value='C' onclick='calcolatrice.barra.value=0;'>
			<input type='button' value='0' onclick='aggiungi(this.value);'>
			<input type='button' value='=' onclick='risultato();'>
			<input type='button' value='/' onclick='divisione();'>
		</form>
	</body>
</html>
aaa