آموزش مقدماتی زبان سی شارپ – قسمت ششم
ساختارهای تکرار
ساختارهای تکرار، ابزارهایی هستند که به ما اجازه میدهند یک یا چند دستور را به تعداد مشخص یا تا زمانی که یک شرط برقرار است، تکرار کنیم. در این بخش با مهمترین ساختارهای تکرار در زبان سی شارپ شامل while، do-while، for، foreach و حلقههای تو در تو آشنا میشوید.
ساختار حلقه while
مانند دستور if یک شرطی را دریافت نموده و به ازای آن شرط مجموعهای از دستورات را اجرا میکند، با این تفاوت که شرط if تنها یک بار اجرا میشود اما در ساختار while تا زمانی که شرط برقرار باشد، اجرای دستورات تکرار میشوند.
while (i < 5)
{
Console.WriteLine(i);
i++;
}
1
2
3
4
ساختار حلقه do-while
این ساختار مشابه ساختار while عمل میکند با این تفاوت که ابتدا دستورات یک بار اجرا شده و سپس شرط حلقه بررسی میشود.
do
{
Console.WriteLine(i);
i++;
} while (i < 5);
1
2
3
4
تفاوت while و do-while
در حلقه do-while دستورات حداقل یک بار اجرا میشوند، حتی اگر شرط از ابتدا غلط باشد.
ساختار حلقه for
این ساختار مشابه حلقه while است با این تفاوت که متغیر نشانه، شرط تکرار و گام افزایش همه در یک جا نوشته میشوند و خوانایی برنامه را افزایش میدهند.
{
Console.WriteLine(i);
}
1
2
3
4
{
Console.WriteLine(i);
}
2
4
6
8
10
حلقههای تکرار تو در تو (nested loop)
در بسیاری از مسائل نیاز است که درون یک حلقه یک یا چند حلقه دیگر استفاده کنیم که به آن ساختار حلقه تو در تو گفته میشود.
{
for (int j = 0; j < 3; j++)
{
Console.WriteLine("i=" + i + ", j=" + j);
}
}
i=0, j=1
i=0, j=2
i=1, j=0
i=1, j=1
i=1, j=2
{
for (int y = 0; y <= 10; y++)
{
if (2000 * x + 5000 * y == 50000)
{
Console.WriteLine("x=" + x + ", y=" + y);
}
}
}
x=5, y=8
x=10, y=6
x=15, y=4
x=20, y=2
x=25, y=0
ساختار foreach
این ساختار عناصر یک آرایه را با هر بار اجرای حلقه خوانده و در متغیر نشانه قرار میدهد. حلقه به اندازه طول آرایه تکرار میشود.
foreach (string name in names)
{
Console.WriteLine(name);
}
Reza
Sara
مزیت foreach
حلقه foreach برای پیمایش آرایهها و مجموعهها بسیار ساده و خوانا است و نیازی به مدیریت اندیس ندارد.
خلاصه
- while: تکرار تا زمانی که شرط برقرار است
- do-while: حداقل یک بار اجرا و سپس بررسی شرط
- for: تکرار با شمارنده مشخص
- foreach: پیمایش آرایهها و مجموعهها
- حلقههای تو در تو: استفاده از حلقه درون حلقه