آموزش حلقه for در سی شارپ
در این مقاله، به آموزش حلقه for در زبان برنامه نویسی سی شارپ می پردازیم و آن را توضیح می دهیم.
آخرین نوع حلقه ای که می خواهیم در سی شارپ، در این فصل به آن بپردازیم، حلقه ی for است. این نوع حلقه چندین بار اجرا می شود از یک شمارنده استفاده می کند. برای تعریف یک حلقه ی for به اطلاعات زیر نیاز داریم:
- یک مقدار اولیه، برای شروع متغیر شمارنده.
- یک شرط برای ادامه دادن حلقه که شامل متغیر شمارنده هم می شود.
- یک کار یا عملیات که باید روی متغیر شمارنده، در انتهای هر حلقه انجام دهیم.
بعنوان مثال، اگر یک حقله داشته باشیم که شمارنده(counter) آن از 1 یک تا 10، یکی یکی اضافه شود(یعنی گام یا قدر نسبت آن 1 باشد) آنگاه مقدار شروع(starting value) برابر با 1 است. و شرط(condition) حلقه این است که شمارنده کوچکتر یا مساوی با 10 باشد. و عملیاتی(operation) که باید در انتهای هر حلقه انجام دهیم، این است که 1 واحد به شمارنده(counter) اضافه شود. این اطلاعات، باید در ساختار یک حلقه ی for، به صورت زیر قرار گیرد:
for (initialization; condition; operation)
{
کدهایی که باید روی آنها حلقه زده شود
}
کد بالا دقیقاً مانند حلقه ی while زیر کار می کند:
<مقدار اولیه>
while (condition)
{
کدهایی که باید حلقه زده شود
<operation>
}
پیش از این، ما برای نوشتن اعداد از 1 تا 10، از حلقه ی do...while استفاده می کردیم. در کد زیر، روش نوشتن این اعداد با استفاده از حلقه for نشان داده شده است:
int i;
for (i = 1; i <= 10; ++i)
{
WriteLine($"{i}");
}
در کد بالا، متغیر i یک عدد صحیحِ شمارنده است که در ابتدا آن را برابر با 1 قرار داده ایم؛ و هربار که حلقه به انتها می رسد، یک واحد به آن اضافه می شود. با اجرای حلقه، مقدار i در کنسول(console) نوشته می شود. وقتی آخرین حلقه انجام می شود، مقدار i برابر با 11 خواهد شد. زیرا وقتی حلقه ی آخر، زده می شود، مقدار i برابر با 10 قرار می گیرد و یک واحد به خاطر عملگر ++ به آن اضافه می شود و در نتیجه برابر با 11 قرار می گیرد.
در حلقه ی for، مانند حلقه های while، کدها تنها وقتی اجرا می شود که ارزش شرط(condition) برابر با true باشد؛ بنابراین اگر ارزش شرط false باشد، کدها اصلا اجرا نمی شوند. بعنوان نکته ی آخر، ما می توانیم متغیر شمارنده(counter) را بعنوان بخشی از دستور حلقه ی for تعریف کنیم و حلقه ی بالا را به صورت زیر بنویسیم:
for (int i = 1; i <= 10; ++i)
{
WriteLine($"{i}");
}
اگر این کار را انجام دهیم، متغیر شمارنده در کدهای بیرونیِ حلقه در دسترس نخواهد بود. (به فصل 6، میدان دید متغیرها مراجعه کنید).