نوشتن ماشین حساب در جاوا اسکریپت
نوشتن یک ماشین حساب ساده با استفاده از جاوا اسکریپت فرآیندی جذاب و آموزنده است. این پروژه میتواند به شما کمک کند تا با مفاهیم پایهای برنامهنویسی، مانند توابع، متغیرها، و مدیریت رویدادها آشنا شوید.
برای شروع، بیایید به ساختار کلی ماشین حساب بپردازیم. این ماشین حساب میتواند چهار عمل اصلی را انجام دهد: جمع، تفریق، ضرب و تقسیم.
ساختار HTML
ابتدا، یک ساختار ساده HTML ایجاد کنید. این ساختار شامل دکمهها و یک منطقه نمایش برای نتایج است.
```html
<!DOCTYPE html>
<html lang="fa">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=
- 0">
<link rel="stylesheet" href="style.css">
</head>
<body>
<div class="calculator">
<input type="text" id="result" disabled>
<div class="buttons">
<button onclick="clearResult()">C</button>
<button onclick="appendToResult('1')">1</button>
<button onclick="appendToResult('2')">2</button>
<button onclick="appendToResult('3')">3</button>
<button onclick="setOperation('+')">+</button>
<button onclick="calculateResult()">=</button>
</div>
</div>
<script src="script.js"></script>
</body>
</html>
```
نوشتن کد جاوا اسکریپت
حالا به کدنویسی در جاوا اسکریپت میپردازیم. در اینجا، ما توابعی برای مدیریت ورودیها و انجام محاسبات ایجاد خواهیم کرد.
```javascript
let currentInput = "";
let operation = "";
function appendToResult(value) {
currentInput += value;
document.getElementById("result").value = currentInput;
}
function clearResult() {
currentInput = "";
operation = "";
document.getElementById("result").value = "";
}
function setOperation(op) {
if (currentInput === "") return;
operation = op;
currentInput += op;
document.getElementById("result").value = currentInput;
}
function calculateResult() {
if (currentInput === "") return;
let result = eval(currentInput);
document.getElementById("result").value = result;
currentInput = result.toString();
}
```
توضیحات در مورد کد
- appendToResult: این تابع، ورودیها را به رشتهی فعلی اضافه میکند و نمایش میدهد.
- clearResult: این تابع میتواند ورودی را پاک کند و همچنین عمل را ریست کند.
- setOperation: این تابع، عمل مورد نظر را تعیین میکند و آن را به ورودی جاری اضافه میکند.
- calculateResult: این تابع با استفاده از تابع `eval`، نتیجهی محاسبات را محاسبه کرده و نمایش میدهد.
نتیجهگیری
این پروژهی ساده، پایهای برای ساخت ماشین حسابی پیشرفتهتر است. میتوانید با افزودن قابلیتهای بیشتری مانند محاسبه درصد، توان و یا طراحی رابط کاربری زیباتر، آن را ارتقا دهید. با تمرین و یادگیری، به راحتی میتوانید مهارتهای برنامهنویسی خود را تقویت کنید.