گروه متغیرها: دستورهایی برای ساخت و استفاده از متغیرها
متغیر چیست و چرا به دستورهایی برای ساخت آن نیاز داریم؟
در برنامهنویسی، متغیرVariable مانند یک جعبه در حافظه کامپیوتر است که میتوانیم یک مقدار را در آن ذخیره کنیم. هر متغیر یک نام دارد و در طول اجرای برنامه، مقدار آن ممکن است تغییر کند. برای ساخت یک متغیر، باید سه دستور اصلی را یاد بگیریم: «مقدار متغیر را ۱ برابر کن» و «متغیر را نشان بده».
فرض کنید میخواهیم تعداد مولکولهای آب در یک واکنش شیمیایی را بشماریم. ابتدا متغیری به نام تعداد_مولکول میسازیم و مقدار اولیه آن را صفر قرار میدهیم. سپس هر بار که یک مولکول آب تولید میشود، دستور «مقدار متغیر را 1 برابر کن» اجرا میکنیم. در پایان با دستور «متغیر را نشان بده» نتیجه را مشاهده میکنیم.
دستور «مقدار متغیر را ۱ برابر کن» (افزایش گامبهگام)
این دستور معنای سادهای دارد: مقدار فعلی متغیر را بردار، 1 واحد به آن اضافه کن، و نتیجه را دوباره در همان متغیر ذخیره کن. در ریاضیات، این عمل را با فرمول زیر نشان میدهیم:
به عنوان مثال، فرض کنید متغیر سرعت مقدار 5 را دارد. بعد از اجرای دستور «مقدار سرعت را 1 برابر کن»، مقدار جدید آن برابر 6 خواهد شد. این عمل در حلقهها و شمارشگرها بسیار کاربرد دارد. به جدول زیر توجه کنید:
| نام متغیر | مقدار اولیه | پس از دستور «۱ برابر کن» |
|---|---|---|
| دما | 25 | 26 |
| فشار | 1013 | 1014 |
دستور «متغیر را نشان بده» (نمایش مقدار ذخیرهشده)
پس از انجام محاسبات روی متغیرها، باید بتوانیم نتیجه را ببینیم. دستور «متغیر را نشان بده» مقدار نهایی متغیر را در خروجی نمایش میدهد. در بسیاری از زبانهای برنامهنویسی، معادل این دستور print یا display است. به عنوان مثال، اگر متغیر انرژی_جنبشی مقدار 500 داشته باشد، اجرای دستور «انرژی_جنبشی را نشان بده» عدد 500 را به ما نشان میدهد.
کاربرد عملی: شبیهسازی واکنش شیمیایی با متغیرها
واکنش تجزیه آب به هیدروژن و اکسیژن را در نظر بگیرید: $ 2H_2O \rightarrow 2H_2 + O_2 $. فرض کنیم هر بار که یک مولکول آب تجزیه میشود، 2 مولکول هیدروژن تولید میشود. میتوانیم با یک متغیر به نام تعداد_H2 این فرآیند را مدل کنیم:
- ابتدا تعداد_H2 = 0
- هر بار که یک مولکول آب تجزیه میشود: دستور «مقدار تعداد_H2 را 2 برابر کن»
- پس از تجزیه 10 مولکول آب: دستور «تعداد_H2 را نشان بده» مقدار 20 را نمایش میدهد.
این همانند دستور «۱ برابر کن» است، اما با عدد 2. به طور کلی، میتوانیم به جای 1 هر عدد دلخواهی را برای افزایش متغیر استفاده کنیم.
چالشهای مفهومی
پاسخ: بله. در ریاضیات، معادله $ x = x + 1 $ هیچ جوابی ندارد. اما در برنامهنویسی، علامت مساوی به معنای «تخصیص مقدار» است، نه تساوی ریاضی. دستور سمت راست محاسبه میشود و نتیجه در متغیر سمت چپ ذخیره میگردد.
پاسخ: در بسیاری از محیطها، متغیر بدون مقدار اولیه حاوی داده تصادفی یا تهی خواهد بود. اجرای دستور «۱ برابر کن» روی چنین متغیری یا خطا میدهد یا نتیجه غیرقابل پیشبینی خواهد داشت. همیشه پیش از افزایش، متغیر را مقداردهی کنید.
پاسخ: خیر. اگر متغیر عدد اعشاری مانند 3.7 باشد، دستور «۱ برابر کن» آن را به 4.7 تبدیل میکند. اما برای متغیرهای متنی، این دستور بیمعنی است و خطای نوع داده رخ میدهد.
مقایسه دستورهای مختلف مقداردهی در یک نگاه
| دستور به زبان ساده | عمل ریاضی | مثال (با فرض a=5) | نتیجه |
|---|---|---|---|
| مقدار متغیر را ۱ برابر کن | a = a + 1 | a = 5 + 1 | 6 |
| مقدار متغیر را ۵ برابر کن | a = a + 5 | a = 5 + 5 | 10 |
| متغیر را نشان بده | نمایش مقدار | — | چاپ عدد ۵ یا ۶ یا ... |
پاورقی
1 متغیر (Variable): مکانی در حافظه کامپیوتر که مقداری قابل تغییر در آن ذخیره میشود. هر متغیر دارای نام، نوع (مانند عدد صحیح، اعشاری، رشته متنی) و مقدار است.
2 تخصیص مقدار (Assignment): عمل ذخیره کردن یک مقدار محاسبهشده در یک متغیر. در بسیاری از زبانها با علامت = نشان داده میشود.
3 مقدار اولیه (Initialization): اولین مقداری که به یک متغیر داده میشود پیش از هرگونه استفاده.
4 نوع داده (Data Type): مشخص میکند متغیر چه نوع مقداری میتواند ذخیره کند؛ مانند عدد صحیح (Integer)، عدد اعشاری (Float) و رشته (String).