{"id":14667,"date":"2025-03-20T09:30:24","date_gmt":"2025-03-20T09:30:24","guid":{"rendered":"https:\/\/elfsight.com\/pt\/?p=14667"},"modified":"2025-03-21T10:14:10","modified_gmt":"2025-03-21T10:14:10","slug":"how-to-make-a-simple-html-calculator","status":"publish","type":"post","link":"https:\/\/elfsight.com\/pt\/blog\/how-to-make-a-simple-html-calculator\/","title":{"rendered":"Como Fazer uma Calculadora Simples em HTML"},"content":{"rendered":"
Se voc\u00ea precisa de uma calculadora r\u00e1pida e simples com funcionalidades b\u00e1sicas como adi\u00e7\u00e3o, subtra\u00e7\u00e3o, multiplica\u00e7\u00e3o e divis\u00e3o, basta usar o c\u00f3digo abaixo. Voc\u00ea pode inserir esse c\u00f3digo HTML no seu arquivo HTML e verificar como tudo funciona. O c\u00f3digo cont\u00e9m coment\u00e1rios para que voc\u00ea entenda como tudo opera e possa fazer altera\u00e7\u00f5es no estilo e no layout deste aplicativo.<\/p>\n\n\n
<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n <meta charset=\"UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n <title>Simple Calculator<\/title>\n <style>\n \/* Style for the entire body, centering the calculator *\/\n body {\n font-family: Arial, sans-serif;\n display: flex;\n justify-content: center;\n align-items: center;\n height: 100vh;\n background-color: #f0f0f0;\n }\n\n \/* Style for the calculator container *\/\n .calculator {\n background-color: white;\n padding: 20px;\n border-radius: 10px;\n box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);\n }\n\n \/* Style for the display area *\/\n .display {\n width: 160px;\n height: 40px;\n text-align: right;\n margin-bottom: 10px;\n font-size: 1.5em;\n padding: 5px;\n }\n\n \/* Grid layout for the calculator buttons *\/\n .buttons {\n display: grid;\n grid-template-columns: repeat(4, 40px);\n gap: 10px;\n }\n\n \/* Style for the buttons *\/\n .buttons button {\n width: 40px;\n height: 40px;\n font-size: 1.2em;\n border: none;\n background-color: #4CAF50;\n color: white;\n border-radius: 5px;\n cursor: pointer;\n }\n\n \/* Hover effect for the buttons *\/\n .buttons button:hover {\n background-color: #45a049;\n }\n\n \/* Special style for the equals button *\/\n .buttons .equals {\n grid-column: span 2; \/* Spans over 2 columns *\/\n background-color: #2196F3;\n }\n\n \/* Hover effect for the equals button *\/\n .buttons .equals:hover {\n background-color: #0b7dda;\n }\n <\/style>\n<\/head>\n<body>\n <div class=\"calculator\">\n <!-- Input field to display the calculator results -->\n <input type=\"text\" class=\"display\" id=\"display\" disabled>\n \n <!-- Calculator buttons laid out in a grid -->\n <div class=\"buttons\">\n <button onclick=\"appendNumber('1')\">1<\/button>\n <button onclick=\"appendNumber('2')\">2<\/button>\n <button onclick=\"appendNumber('3')\">3<\/button>\n <button onclick=\"setOperator('+')\">+<\/button>\n\n <button onclick=\"appendNumber('4')\">4<\/button>\n <button onclick=\"appendNumber('5')\">5<\/button>\n <button onclick=\"appendNumber('6')\">6<\/button>\n <button onclick=\"setOperator('-')\">-<\/button>\n\n <button onclick=\"appendNumber('7')\">7<\/button>\n <button onclick=\"appendNumber('8')\">8<\/button>\n <button onclick=\"appendNumber('9')\">9<\/button>\n <button onclick=\"setOperator('*')\">*<\/button>\n\n <button onclick=\"clearDisplay()\">C<\/button>\n <button onclick=\"appendNumber('0')\">0<\/button>\n <button onclick=\"calculate()\" class=\"equals\">=<\/button>\n <button onclick=\"setOperator('\/')\">\/<\/button>\n <\/div>\n <\/div>\n\n <script>\n \/* Variables to store current input, previous input, and operator *\/\n let currentInput = '';\n let operator = '';\n let previousInput = '';\n\n \/* Function to append numbers to the current input *\/\n function appendNumber(number) {\n currentInput += number; \/\/ Append the clicked number to current input\n document.getElementById('display').value = currentInput; \/\/ Update the display\n }\n\n \/* Function to set the operator and prepare for the next input *\/\n function setOperator(op) {\n operator = op; \/\/ Store the chosen operator\n previousInput = currentInput; \/\/ Store the current input as previous\n currentInput = ''; \/\/ Clear the current input for the next number\n }\n\n \/* Function to perform the calculation based on the operator *\/\n function calculate() {\n let result;\n \/\/ Perform the appropriate operation based on the operator\n if (operator === '+') {\n result = parseFloat(previousInput) + parseFloat(currentInput);\n } else if (operator === '-') {\n result = parseFloat(previousInput) - parseFloat(currentInput);\n } else if (operator === '*') {\n result = parseFloat(previousInput) * parseFloat(currentInput);\n } else if (operator === '\/') {\n result = parseFloat(previousInput) \/ parseFloat(currentInput);\n }\n document.getElementById('display').value = result; \/\/ Display the result\n currentInput = result.toString(); \/\/ Store the result as the new current input\n operator = ''; \/\/ Reset the operator\n }\n\n \/* Function to clear the display and reset the calculator *\/\n function clearDisplay() {\n currentInput = '';\n previousInput = '';\n operator = '';\n document.getElementById('display').value = ''; \/\/ Clear the display\n }\n <\/script>\n<\/body>\n<\/html><\/code><\/pre>\n\n\nExplica\u00e7\u00e3o das principais se\u00e7\u00f5es<\/h3>\n\n\n\n
Para ajud\u00e1-lo a gerenciar e ajustar a calculadora, escrevemos algumas orienta\u00e7\u00f5es adicionais sobre suas funcionalidades:<\/p>\n\n\n\n
Estrutura HTML<\/h4>\n\n\n\n\n- A calculadora est\u00e1 contida dentro de um elemento div com a classe calculator<\/em>.<\/li>\n\n\n\n
- Um elemento input<\/em> \u00e9 usado como o visor da calculadora e est\u00e1 desativado para que os usu\u00e1rios n\u00e3o possam digitar manualmente.<\/li>\n\n\n\n
- Os bot\u00f5es s\u00e3o organizados em um formato de grade dentro da div buttons<\/em> e dispostos para parecerem com uma calculadora.<\/li>\n<\/ul>\n\n\n\n
Estiliza\u00e7\u00e3o CSS<\/h4>\n\n\n\n\n- O corpo da p\u00e1gina \u00e9 estilizado para centralizar a calculadora vertical e horizontalmente.<\/li>\n\n\n\n
- A pr\u00f3pria calculadora tem um fundo branco com cantos arredondados e sombra para dar um efeito de cart\u00e3o.<\/li>\n\n\n\n
- Os bot\u00f5es s\u00e3o estilizados com tamanho, cor e efeito de hover consistentes para fornecer feedback visual.<\/li>\n<\/ul>\n\n\n\n
Funcionalidade JavaScript<\/h4>\n\n\n\n\n- appendNumber()<\/em> adiciona n\u00fameros ao visor quando um usu\u00e1rio clica em um bot\u00e3o.<\/li>\n\n\n\n
- setOperator()<\/em> armazena o operador selecionado (+, -, *, \/) e salva a entrada atual como previousInput<\/em>.<\/li>\n\n\n\n
- calculate()<\/em> executa a opera\u00e7\u00e3o matem\u00e1tica apropriada com base no operador selecionado e exibe o resultado.<\/li>\n\n\n\n
- clearDisplay()<\/em> redefine a calculadora, limpando todas as entradas e o visor.<\/li>\n<\/ul>\n\n\n\n
Esta \u00e9 uma calculadora simples que utiliza apenas HTML, CSS e JS b\u00e1sicos. Portanto, seus recursos visuais e funcionalidades s\u00e3o bastante limitados.<\/p>\n\n\n\n
<\/figure>\n\n\n\nComo Criar uma Calculadora para Tarefas Complexas<\/h2>\n\n\n\n
Nossa calculadora simples em HTML acima \u00e9 suficiente para opera\u00e7\u00f5es b\u00e1sicas e tem um design funcional e limpo. \u00c9 \u00fatil para divers\u00e3o ou para acompanhar seu progresso no aprendizado de programa\u00e7\u00e3o. Mas quando se trata de tarefas mais profissionais ou complexas, voc\u00ea pode precisar de algo mais avan\u00e7ado. Seja para planejar um or\u00e7amento familiar ou organizar uma viagem, recursos aprimorados de c\u00e1lculo podem fazer uma grande diferen\u00e7a. Ent\u00e3o, quais s\u00e3o suas op\u00e7\u00f5es?<\/p>\n\n\n\n
Aprofunde seus conhecimentos em programa\u00e7\u00e3o<\/h3>\n\n\n\n
A melhor maneira de lidar com projetos mais complexos \u00e9 aprofundar-se em HTML, CSS e JavaScript. Com um conhecimento avan\u00e7ado, voc\u00ea poder\u00e1 criar c\u00e1lculos com m\u00faltiplos campos, op\u00e7\u00f5es, condi\u00e7\u00f5es e vari\u00e1veis. Nesse ponto, suas habilidades de programa\u00e7\u00e3o ir\u00e3o muito al\u00e9m da constru\u00e7\u00e3o de uma simples calculadora em HTML. Ainda h\u00e1 um longo caminho a percorrer.<\/p>\n\n\n\n
Experimente um widget de Calculadora sem c\u00f3digo para HTML<\/h3>\n\n\n\n
Se suas habilidades de programa\u00e7\u00e3o ainda n\u00e3o s\u00e3o t\u00e3o avan\u00e7adas e voc\u00ea precisa de uma solu\u00e7\u00e3o poderosa agora, temos boas not\u00edcias para voc\u00ea. Voc\u00ea pode criar um widget de Calculadora em HTML<\/a> personalizado sem precisar programar nada. Voc\u00ea pode adicionar diversos campos, ajustar condi\u00e7\u00f5es e nomear tudo de forma clara para o seu cen\u00e1rio. Basta test\u00e1-lo no editor abaixo antes de continuarmos.<\/p>\n\n\n\n \n \n