زبان برنامه نویسی سی شارپ دارای حلقه ای به نام while است که از آن برای اجرای مجموعه ای از کدها به صورت تکراری استفاده می شود. در این فصل با نحوه ی عملکرد حلقه ی while آشنا میشویم.
حلقه ی while
در زبان برنامه نویسی سی شارپ از حلقه ی while
برای اجرای مجموعه ای از دستورات به صورت تکراری استفاده میشود.
قاعده ی نوشتاری حلقه while
به شکلی است که در زیر آمده است :
While(boolean expression) { //execute code as long as condition returns true }
همانطور که در قاعده نوشتاری بالا مشاهده میکنید حلقه while
شامل یک عبارت شرطی بولین است که مقداری صحیح و یا ناصحیح را برمیگرداند. حلقه while
مادامی که عبارت شرطی آن مقداری صحیح را ارزیابی می کند بلاک های کد موجود در بدنه ی خود را به صورت تکراری اجرا میکند. در این حلقه ، مقدار دهی اولیه متغیر باید قبل از حلقه انجام گرفته و عمل کاهش و یا افزایش در بدنه حلقه انجام گیرد.
در زیر نمونه مثال ساده ای از حلقه ی while
آورده شده است :
using System;
public class Program
{
public static void Main()
{
int i = 0;
while (i < 10)
{
Console.WriteLine("Value of i: {0}", i);
i++;
}
}
}
خروجی :
Value of i: 0 Value of i: 1 Value of i: 2 Value of i: 3 Value of i: 4 Value of i: 5 Value of i: 6 Value of i: 7 Value of i: 8 Value of i: 9
در نمونه مثال بالا حلقه while
شامل عبارت شرطی i < ۱۰
است. در داخل بدنه ی حلقه while
مقدار متغیر i
در هر بار اجرای حلقه ی یکی افزوده میشود (با استفاده از دستور ++i
). بنابراین حلقه ی فوق تا زمانی که مقدار متغیر i
به عدد ۱۰ برسد اجرا میشود.
استفاده از کلمه ی رزرو شده ی break
می توان از کلمه رزرو شده ی break
برای خروج از حلقه while استفاده کرد :
using System;
public class Program
{
public static void Main()
{
int i = 0;
while (true)
{
Console.WriteLine("Value of i: {0}", i);
i++;
if (i > 10)
break;
}
}
}
خروجی :
Value of i: 0
حلقه های تو در توی while
در زبان برنامه نویسی سی شارپ می توان حلقه های while
را به صورت تو در تو به کار برد :
using System;
public class Program
{
public static void Main()
{
int i = 0;
while (i < 2)
{
Console.WriteLine("Value of i: {0}", i);
int j = 1;
i++;
while (j < 2)
{
Console.WriteLine("Value of j: {0}", j);
j++;
}
}
}
}
خروجی :
Value of i: 0 Value of j: 1 Value of i: 1 Value of j: 1
نکته : مطمئن شوید که عبارت شرطی موجود در حلقه ی while در نقطه ای ، مقدار flase را برای اتمام حلقه برمیگرداند. در غیر این صورت حلقه while به یک حلقه بی نهایت تبدیل شده و برنامه دچار خطا خواهد شد.
به خاطر داشته باشید که :
- حلقه ی while بلاک هایی از کد را به صورت تکراری اجرا میکند.
- حلقه while شامل یک عبارت شرطی است. گامهای کاهش و یا افزایش باید در داخل بدنه ی حلقه انجام شود.
- از کلمه رزرو شده break برای توقف اجرای حلقه و خروج از آن استفاده کنید.
- در زبان برنامه نویسی سی شارپ می توان حلقه های while را به صورت تودرتو به کار برد.