مشخصات مقاله
-
4679
-
0.0
-
23374
-
0
-
0
حلقه for در سی شارپ (C# loop)
وقتی با برنامهنویسی C# کار میکنی، خیلی وقتها پیش میاد که بخوای یک دستور یا حتی چند دستور رو چند بار اجرا کنی. برای انجام این کار، حلقهها یکی از ابزارهای اصلی C# هستن و بسته به مسئلهای که داری، میتونی از ساختارهای مختلفی استفاده کنی.
یکی از این ساختارها، حلقه for هست که کاربرد خیلی زیادی برای تکرار یک بخش از کد داره. اگه در حال یادگیری C# هستی، آشنایی با نحوه کار حلقه for و اجزای مختلف اون، یکی از مباحث مهمیه که باید بهش مسلط بشی.
یکی دیگه از روشهای خیلی پرکاربرد برای ساخت حلقه در زبان سی شارپ، استفاده از دستور for هست. سادگی و خوانایی این دستور باعث شده در خیلی از موقعیتها نسبت به بعضی روشهای دیگه انتخاب محبوبتری باشه. توی این درس میخوایم با حلقه for در سی شارپ بیشتر آشنا بشیم و ببینیم چطور میتونیم ازش استفاده کنیم.
دستور for یکی از رایجترین و پرکاربردترین روشها برای ایجاد ساختارهای تکراری و حلقههای شرطی در زبان سی شارپه. این دستور داخل پرانتز خودش میتونه سه بخش اصلی داشته باشه. هیچکدوم از این سه بخش اجباری نیستن، اما وجود اونها باعث میشه کنترل و مدیریت حلقه راحتتر بشه. نکته مهم اینه که for، درست مثل while، در ابتدای اجرای بدنه حلقه و قبل از هر بار تکرار، شرط رو بررسی میکنه. اگه نتیجه شرط true باشه، بدنه حلقه اجرا میشه. در ساختار معمول for، این سه بخش وظایف مشخصی دارن: بخش اول نقطه شروع شمارش رو مشخص میکنه، بخش دوم حد یا شرط ادامه شمارش رو تعیین میکنه و بخش سوم مشخص میکنه که شمارنده در هر بار تکرار چطور تغییر کنه. ترکیب نحوی حلقه for به این صورته.
عبارت initialize متغیریه که مقدار اولیه یا نقطه شروع حلقه رو مشخص میکنه. برای مثال میتونه به شکل Count = 0; باشه. عبارت initialize در واقع تعیین میکنه شمارش از چه مقداری شروع بشه. بخش condition مشخص میکنه حلقه تا چه زمانی ادامه داشته باشه؛ یعنی در چه نقطهای شمارش متوقف بشه. برای مثال، Count < 24; یعنی حلقه تا زمانی ادامه پیدا میکنه که مقدار Count کوچکتر از 24 باشه. وقتی شمارنده به 24 برسه، چون 24 دیگه در محدوده تعیینشده نیست، حلقه متوقف میشه. برای مشخص کردن این محدوده میتونیم از عملگرهای مقایسهای مثل >= یا <= هم استفاده کنیم. بخش increment factor هم مشخص میکنه که قبل از ادامه پیدا کردن حلقه، مقدار شمارنده چطور تغییر کنه. این تغییر میتونه به صورت افزایش یا کاهش مقدار شمارنده باشه؛ مثلاً با استفاده از ++Count.
مثال:
نتیجه اجرای برنامه به صورت زیر به دست میآید.
تو در تو کردن دستور شرطی
بعضی وقتها ممکنه کدی که داخل بدنه یک حلقه قرار داره، خودش دوباره شامل یک حلقه تکرار باشه. در این حالت با چیزی به اسم حلقه تو در تو یا Nested Loop روبهرو هستیم. برای اینکه بهتر با این حالت آشنا بشید، برنامه زیر رو در نظر بگیرید.
برنامه بالا از کاربر میخواد یکی از اعداد 1، 2 یا 3 رو وارد کنه. هر عدد دیگهای که کمتر از 1 یا بیشتر از 3 باشه، بهعنوان ورودی معتبر پذیرفته نمیشه. نتیجه اجرای برنامه به صورت زیره.
اگه کاربر یک مقدار نامعتبر وارد کنه، سؤال دوباره نمایش داده میشه و از کاربر میخواد مقدار درست رو وارد کنه. برای حل چنین مسئلهای میتونیم یک دستور شرطی رو داخل یک دستور شرطی دیگه قرار بدیم. به این کار nesting یا تودرتو کردن دستور شرطی گفته میشه. در ادامه با یک مثال، نحوه تودرتو کردن دستورهای شرطی رو بهتر میبینید.
نتیجه اجرای برنامه به صورت زیر خواهد بود.
اگه میخوای مباحث C# رو از پایه و به شکل اصولی یاد بگیری، بعد از آشنایی با ساختارهایی مثل حلقه for میتونی مسیر یادگیریت رو با یک برنامه آموزشی منظم ادامه بدی. در دوره آموزش C# میتونی مباحث این زبان رو قدمبهقدم دنبال کنی و با مفاهیم مختلف برنامهنویسی در C# بیشتر آشنا بشی.