let display = document.getElementById('display'); let currentInput = ''; let previousInput = ''; let operation = null; function appendNumber(number) { currentInput += number; display.textContent = currentInput; } function appendDecimal(dot) { if (!currentInput.includes(dot)) { currentInput += dot; display.textContent = currentInput; } } function chooseOperation(op) { if (currentInput === '') return; if (previousInput !== '') { calculateResult(); } operation = op; previousInput = parseFloat(currentInput); currentInput = ''; } function clearDisplay(clear) { if (clear === 'C') { display.textContent = '0'; currentInput = ''; previousInput = ''; operation = null; } else if (clear === 'AC') { // Full reset (not implemented in basic example) } } function calculateResult(equals) { let result; const prev = previousInput; const curr = parseFloat(currentInput); if (isNaN(prev) || isNaN(curr)) return; switch (operation) { case '+': result = prev + curr; break; case '-': result = prev - curr; break; case '*': result = prev * curr; break; case '/': result = prev / curr; break; case '%': result = prev % curr; break; default: return; } display.textContent = result; previousInput = result; currentInput = ''; operation = null; } // Bind equals button to calculate result document.querySelector('button[onclick="calculateResult(\'=\')"]').addEventListener('click', calculateResult);