متغیر و مقداردهی؛ خانهای برای دادههای شما
متغیر چیست و چگونه مقدار میگیرد؟
در دنیای برنامهنویسی، متغیر نامی است که به یک مکان در حافظهی رایانه داده میشود تا بتوانیم دادهای را در آن ذخیره کنیم. به زبان سادهتر، متغیر مثل یک کشو یا جعبه است که روی آن برچسبی نوشتهاید. هر وقت بخواهید چیزی را در آن قرار دهید، آن را داخل جعبه میگذارید و هر وقت هم نیاز داشته باشید، به سراغ همان جعبه میروید. برای اینکه دادهای را در متغیر قرار دهید، باید عمل مقداردهی را انجام دهید. مقداردهی یعنی به متغیر بگویید: «از این به بعد، این مقدار را برای من نگه دار.» برای مثال، اگر متغیری به نام «سن» داشته باشید، با مقداردهی، عدد سن خود را در آن ذخیره میکنید.
نکتهی مهم این است که هر متغیر در هر لحظه فقط میتواند یک مقدار داشته باشد. وقتی به متغیر مقدار تازهای میدهید، مقدار قبلی به کلی پاک میشود و مقدار جدید جای آن را میگیرد. این قاعده، پایهی بسیاری از کارهای برنامهنویسی است؛ از شمارش تعداد دفعات تکرار یک کار گرفته تا محاسبهی میانگین نمرات.
کاربرد متغیر در زندگی روزمره
شاید فکر کنید متغیرها فقط در برنامهنویسی کاربرد دارند، اما اگر دقت کنید، در زندگی روزمره هم با نمونههای زیادی از آنها روبرو هستید. فرض کنید میخواهید پول تو جیبی خود را بشمارید. یک تکه کاغذ برمیدارید و روی آن مینویسید: «پول تو جیبی». این همان نام متغیر است. حالا مبلغ را کنار آن مینویسید، مثلاً ۱۰۰۰۰ تومان. این همان مقداردهی اولیه است. اگر بعداً پدر یا مادرتان به شما ۵۰۰۰ تومان دیگر بدهند، مقدار قبلی را پاک میکنید و مبلغ جدید یعنی ۱۵۰۰۰ تومان را مینویسید. این دقیقاً همان قاعدهی جایگزینی مقدار جدید به جای مقدار پیشین است.
مثال دیگر، نمرهی یک درس است. فرض کنید معلم اعلام کند که نمرهی شما در آزمون اول ۱۷ است. این عدد را در ذهن خود به عنوان «نمرهی ریاضی» نگه میدارید. اگر بعداً آزمون دوم را بگیرید و نمرهی ۱۹ کسب کنید، نمرهی قبلی کاملاً فراموش میشود و نمرهی جدید جای آن را میگیرد. در برنامهنویسی هم دقیقاً همین اتفاق میافتد؛ هر بار که به متغیر مقدار جدیدی نسبت دهید، مقدار قبلی از بین میرود و مقدار جدید در حافظه ثبت میشود.
| ویژگی | متغیر | ثابت |
|---|---|---|
| تغییر مقدار | قابل تغییر است | غیرقابل تغییر است |
| جایگزینی مقدار | مقدار جدید جای قدیم را میگیرد | مقدار ثابت میماند |
| مثال روزمره | پول تو جیبی که هر روز عوض میشود | تعداد روزهای هفته که همیشه هفت است |
پرسشهای چالشی دربارهی متغیر
پرسش ۱: اگر متغیر «نمره» را با مقدار ۱۵ مقداردهی کنم و سپس دوباره آن را با ۲۰ مقداردهی کنم، چه اتفاقی برای عدد ۱۵ میافتد؟
پاسخ: عدد ۱۵ به کلی پاک میشود و از حافظه خارج میگردد. در واقع، متغیر «نمره» دیگر مقدار ۱۵ را به خاطر نمیآورد و فقط ۲۰ را نگه میدارد.
پرسش ۲: آیا میتوانم در یک متغیر، همزمان دو مقدار مختلف مانند نام و سن را ذخیره کنم؟
پاسخ: خیر، هر متغیر فقط گنجایش یک مقدار را دارد. اگر بخواهید نام و سن را ذخیره کنید، باید از دو متغیر جداگانه استفاده کنید؛ یکی برای نام و دیگری برای سن. هر کدام از این متغیرها مقدار مربوط به خود را نگه میدارند.
پرسش ۳: فرض کنید متغیر «تعداد» را با مقدار ۳ مقداردهی کردهام. حالا دستور «تعداد برابر است با تعداد به اضافهی دو» را اجرا میکنم. چه اتفاقی میافتد؟
پاسخ: ابتدا مقدار فعلی «تعداد» یعنی ۳ خوانده میشود و با دو جمع میشود تا عدد ۵ به دست آید. سپس این عدد جدید (۵) به عنوان مقدار جدید به متغیر «تعداد» نسبت داده میشود و مقدار قبلی یعنی ۳ از بین میرود.
آنچه آموختیم: متغیر نامی برای نگهداری داده در حافظه است. با مقداردهی، دادهای در متغیر قرار میگیرد و اگر مقدار جدیدی به آن بدهیم، مقدار قبلی کاملاً جای خود را به مقدار جدید میدهد. این قاعده در بسیاری از کارهای روزمره مانند شمارش پول یا ثبت نمرات دیده میشود. در برنامهنویسی، متغیرها ابزاری پایهای برای ذخیرهسازی و تغییر دادهها هستند و درک درست آنها، گام نخست برای یادگیری مهارتهای بالاتر است.
به یاد داشته باشید که هر متغیر فقط یک مقدار را در خود نگه میدارد و با هر مقداردهی جدید، تاریخچهی مقدار قبلی پاک میشود. این ویژگی ساده اما مهم، پایه و اساس بسیاری از الگوریتمها و راهحلهای برنامهنویسی است.