Calculadora com botões em JavaScript

26/09/2020

0

Pessoal,
Preciso de uma ajuda com o cálculo abaixo. Eu consigo fazer esta função em javascript chamando o cálculo através do prompt.
ex:

var a = parseInt(window.prompt ("Digite o primeiro operando",""));
var b = parseInt(window.prompt ("Digite o segundo operando",""));
var op = window.prompt ("Digite o operador (+,
--, * ou
var result;
switch (op) {
case "+": result = a + b;
break;
case "
"--": result = a b;
break;
case "*": result = a * b;
break;
case "/": result = a / b;
break;
default: alert ("operador inválido");
}
document.write (a,op,b," = ", result);


No entanto minha página contém botôes e dois campos inputs

<!DOCTYPE html>
<html>
<head>
<title>Calculadora</title>
<style type="text/css">

</style>

</head>
<body>

<script type="text/javascript" src="js/funcoesmatematicas.js"></script>

<div id="conteudo">

<span>Digite os valores que deseja calcular:</span>
<br>

<input type="text" id="valor1" name="1valor">
<input type="text" id="valor2" name="2valor"><br><br>

<input type="button" onclick="calcular(''''op'''')" value = "+">
<input type="button" onclick="calcular(''''op'''')" value = "-">
<input type="button" onclick="calcular(''''op'''')" value = "*">
<input type="button" onclick="calcular(''''op'''')" value = "/">

</div>
</body>
</html>


Para isso criei este código em javascript parecido com o de cima porém está dando erro:
function calcular(){

	var valor1 = parseFloat(document.getElementById(''''valor1'''').value);
	var valor2 = parseFloat(document.getElementById(''''valor2'''').value);

	var result;
	

	switch (op){

		case "+": 
		result = valor1+valor2;
		break;
		case "-": 
		result = valor1-valor2;
		break;
		case "*":
		result = valor1*valor2;
		break;
		case "/":
		if (valor2==0){
			alert("Não é possível dividir por zero");
		}else{
			result = valor1/valor2;
		}
		break;
	}
	alert(result);



}
Carlos Leonel

Carlos Leonel

Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar