javascript simple calculator example
Here's a simple JavaScript calculator that can perform addition, subtraction, multiplication and division:
<html
<head>
<script>
function calculate(operation) {
let num1 = parseFloat(document.getElementById("num1").value);
let num2 = parseFloat(document.getElementById("num2").value);
let result;
switch (operation) {
case "add":
result = num1 + num2;
break;
case "subtract":
result = num1 - num2;
break;
case "multiply":
result = num1 * num2;
break;
case "divide":
result = num1 / num2;
break;
}
document.getElementById("result").value = result;
}
</script>
</head>
<body>
<input type="text" id="num1" />
<select id="operation">
<option value="add">+</option>
<option value="subtract">-</option>
<option value="multiply">*</option>
<option value="divide">/</option>
</select>
<input type="text" id="num2" />
<input type="button" value="Calculate" onclick="calculate(operation.value)" />
<input type="text" id="result" disabled />
</body>
</html>
Here is a more complete calculator example that includes error handling for invalid inputs:
<html>
<head>
<script>
function calculate(operation) {
let num1 = parseFloat(document.getElementById("num1").value);
let num2 = parseFloat(document.getElementById("num2").value);
let result;
if (isNaN(num1) || isNaN(num2)) {
alert("Please enter a valid number.");
return;
}
switch (operation) {
case "add":
result = num1 + num2;
break;
case "subtract":
result = num1 - num2;
break;
case "multiply":
result = num1 * num2;
break;
case "divide":
if (num2 === 0) {
alert("Cannot divide by zero.");
return;
}
result = num1 / num2;
break;
}
document.getElementById("result").value = result;
}
</script>
</head>
<body>
<input type="text" id="num1" />
<select id="operation">
<option value="add">+</option>
<option value="subtract">-</option>
<option value="multiply">*</option>
<option value="divide">/</option>
</select>
<input type="text" id="num2" />
<input type="button" value="Calculate" onclick="calculate(operation.value)" />
<input type="text" id="result" disabled />
</body>
</html>
No comments:
Post a Comment