none
Calculadora Media com JavaScript RRS feed

  • Pergunta

  • Boa noite, eu criei uma calculadora com uma caixa "input" e estou com problema na parte de java script, eu fiz com base nesse site aqui - http://www.devin.com.br/calculadoras-javascript/ .... alguem pode me ajudar onde esta o erro, ja revisei e tudo e mesmo assim ele nao esta fazendo a operação , se puder mostrar e me explicar , porque estou iniciando na area de java script vou postar o codigo aqui abaixo 

    - html 

    <!DOCTYPE html>
    <html lang="pt-br">
    <head>
    <title>Aula JavaScript</title>
    <meta charset="utf-8" />
    <meta name="author" content="Gustavo Caspirro" />
    <link rel="stylesheet" type="text/css" href="javascript3.css">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <script type="text/javascript" src="javascript3.js"></script>
    </head>
    <body>
    <form class="calc" name="calculadora">
    <h1> Calculadora </h1>
    <p>Criada por: Gustavo Caspirro</p>
    <input type="text" id="visor" name="visor" placeholder="Faça sua conta"/></br>
    <button class="botao" type="button" value="7" onclick="botao(value);">7</button>
    <button class="botao" type="button" value="8" onclick="botao(value);">8 </button>
    <button class="botao" type="button" value="9" onclick="botao(value);">9</button>
    <button class="botao oper" type="button" name ="/" value="/" onclick="botao(value);">/</button></br>

    <button class="botao" type="button" value="4" onclick="botao(value);">4</button>
    <button class="botao" type="button" value="5" onclick="botao(value);">5</button>
    <button class="botao" type="button" value="6" onclick="botao(value);">6</button>
    <button class="botao oper" type="button" name ="*" value="*" onclick="botao(value);">*</button></br>

    <button class="botao" type="button" value="1" onclick="botao(value);">1</button>
    <button class="botao" type="button" value="2" onclick="botao(value);">2</button>
    <button class="botao" type="button" value="3" onclick="botao(value);">3</button>
    <button class="botao oper" type="button" name ="-" value="-" onclick="botao(value);">-</button></br>

    <button class="botao" type="button" value="0" onclick="botao(value);">0</button>
    <button class="botao" type="button" value="=" onclick="calcule();">=</button>
    <button class="botao" type="button" value="C" onclick="reset();">C</button>
    <button class="botao oper" type="button" name ="+" value="+" onclick="botao(value);">+</button> </br>
    </form>
    </body>
    </html>

    javaScript

    function botao(num) {
    if (typeof gvisor == 'undefined') {
    document.calculadora.visor.value = '';
    }

    document.calculadora.visor.value = document.calculadora.visor.value + num;
    gvisor = 1;
    }

    function reset() {
    //código para limpar o visor
    document.calculadora.visor.value = '';
    }


    //codigo para calcular o visor
    // pegar o valor do visor em uma variável
    //fazer o calculo: eval
    //pegar o resultado e colocar no visor
    function calcule(calculadora, valor1, valor2) {

    if (calculadora == "+") {
    var resultado = parseFloat(valor1) + parseFloat(valor2);
    } else {
    if (calculadora == "-") {
    var resultado = (valor1 - valor2);
    } else {
    if (calculadora == "*") {
    var resultado = (valor1 * valor2);
    } else {
    var resultado = valor1 / valor2;
    }
    }
    }

    return(resultado);
    }

    quarta-feira, 3 de fevereiro de 2016 22:43

Respostas

  • O erro está em sua função calcular

    //em seu html ele não esta recebendo parâmetros
    function calcule() {
    //com isso voce ja pega o valor da sua calculadora
    //eu vi que no seu visor está em "9+9" por exemplo
    //com o eval ele executa o calculo
    var resultado = eval(document.calculadora.visor.value);
    
    
    return(resultado);
    }


    Por favor, lembre-se de “Marcar como Resposta” as respostas que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    Erick Wendel G. Silva
    MCP | MSP | MS


    • Sugerido como Resposta Erick WendelMVP quarta-feira, 3 de fevereiro de 2016 23:53
    • Marcado como Resposta Nicolas Campos quinta-feira, 4 de fevereiro de 2016 13:41
    quarta-feira, 3 de fevereiro de 2016 23:53

Todas as Respostas

  • O erro está em sua função calcular

    //em seu html ele não esta recebendo parâmetros
    function calcule() {
    //com isso voce ja pega o valor da sua calculadora
    //eu vi que no seu visor está em "9+9" por exemplo
    //com o eval ele executa o calculo
    var resultado = eval(document.calculadora.visor.value);
    
    
    return(resultado);
    }


    Por favor, lembre-se de “Marcar como Resposta” as respostas que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    Erick Wendel G. Silva
    MCP | MSP | MS


    • Sugerido como Resposta Erick WendelMVP quarta-feira, 3 de fevereiro de 2016 23:53
    • Marcado como Resposta Nicolas Campos quinta-feira, 4 de fevereiro de 2016 13:41
    quarta-feira, 3 de fevereiro de 2016 23:53
  • mas ai o meu function calcule(calculadora, valor1, valor2) já não esta com o parâmetro ?
    quinta-feira, 4 de fevereiro de 2016 00:15
  • Você pode pegar o valor com parâmetros ou diretamente da página!
    quinta-feira, 4 de fevereiro de 2016 04:44