حلقهٔ for
for (int n = 1; n <= 3; n = n + 1) مقدار n را از 1 شروع میکند، تا وقتی n کوچکتر یا برابر 3 است ادامه میدهد، و بعد از هر گذر 1 به n اضافه میکند. داخل آکولاد، Console.WriteLine(n) عدد جاری را مینویسد. صفحه سه خط نشان میدهد: 1، بعد 2، بعد 3. نام کلاس عمومی را Pine نگه دارید.
سه بخش روی خط for نشستهاند
فایل Pine را باز کنید. نام کلاس Pine میماند. این صفحه نوع را عوض نام نمیکند. اگر خط int choice هنوز آنجاست، پاکش کنید، از جمله هر switch، case، break، و default از صفحهٔ قبل. اگر خط bool ready هنوز آنجاست، پاکش کنید. هر خط ReadLine را هم پاک کنید. فایلی که نگه میدارید منتظر تایپ نیست، choice ندارد، و switch هم ندارد. صفحه فقط با خط نوشتنی داخل آکولاد for نوشته میشود.
درون Main، حلقه را بنویسید:
for (int n = 1; n <= 3; n = n + 1) {
Console.WriteLine(n);
}
کلمهٔ for با حرف کوچک است. داخل پرانتز سه کار نشستهاند، با سمیکالن از هم جدا. اول: int n = 1; — یک نام عدد صحیح n بساز و از 1 شروع کن. دوم: n <= 3 — تا وقتی آن آزمون true است ادامه بده. سوم: n = n + 1 — بعد از هر گذر از آکولاد، یکی بیشتر زیر n نگه دار. آکولاد بدنه را نگه میدارد. Console.WriteLine(n); مقدار جاری n را مینویسد و خط را تمام میکند. روی آن خط نوشتن دور n گیومه نیست، پس عدد ظاهر میشود، نه حرف n. فایل را ذخیره کنید.
فایلی که نگه میدارید
این شکل آموزشی را نگه دارید. یک for با پرانتز دور شروع، آزمون، و گام. یک نام، n، شروع از 1. یک آزمون، n <= 3. یک گام، n = n + 1. یک خط نوشتن داخل آکولاد که نام لخت را مینویسد. خط choice نیست، switch نیست، و گیومه دور n هم نیست.
using System;
public class Pine
{
public static void Main()
{
for (int n = 1; n <= 3; n = n + 1)
{
Console.WriteLine(n);
}
}
}
از بالا بخوانید. using System; نامهای کوتاه را آماده میکند. public class Pine نوع را نام میگذارد. public static void Main() جایی است که زمان اجرا شروع میکند. for (int n = 1; n <= 3; n = n + 1) سه کار را آماده میکند. Console.WriteLine(n); هر بار که بدنه اجرا شود n جاری را مینویسد. روی صفحه سه خط: 1، بعد 2، بعد 3. گیومه نیست. در فایلی که نگه میدارید خط int choice نیست.
با dotnet run اجرا کنید. برنامه سه خط مینویسد و تمام میشود. منتظر نمیماند که شما چیزی تایپ کنید. حلقه از قبل داخل فایل بود. اگر dotnet run منتظر ماند، هنوز ReadLine داخل فایل است. آن خط را پاک کنید و همان for بالا را نگه دارید. صفحه روی خط اول 1، روی خط دوم 2، روی خط سوم 3 را نشان میدهد. اگر صفحه mid یا none را نشان دهد، فایل switch هنوز سر جایش است. switch مربوط به choice را پاک کنید. اگر صفحه روی هر خط حرف n را نشان دهد، خط نوشتن دور نام گیومه دارد: Console.WriteLine("n");. آن گیومهها حرف را مشخص میکنند، پس شمارنده نوشته نمیشود. اگر صفحه حرفهای for را نشان دهد، خط نوشتن دور همان کلمه گیومه دارد. برای صفحهای که خط اشتباه نشان میدهد SDK داتنت را دوباره نصب نکنید.
یک اجرای کامل را به ترتیب راه بروید. n از 1 شروع میشود. آزمون n <= 3 مقدار true دارد، پس بدنه اجرا میشود و Console.WriteLine(n) مقدار 1 را مینویسد. بعد گام n = n + 1 مقدار 2 را نگه میدارد. آزمون هنوز true است، پس بدنه 2 مینویسد. گام 3 را نگه میدارد. آزمون هنوز true است، پس بدنه 3 مینویسد. گام 4 را نگه میدارد. حالا n <= 3 مقدار false دارد، پس حلقه تمام میشود. چیز دیگری نوشته نمیشود. سه خط نوشتن جدا با دست نمینویسید؛ همان بدنه سه بار با n در حال عوضشدن اجرا میشود. شروع یکبار در آغاز اجرا میشود. آزمون پیش از هر گذر اجرا میشود. گام بعد از هر گذر اجرا میشود. آن سه کار داخل پرانتز میمانند؛ کار نوشتن داخل آکولاد میماند.
حد بالا را بالاتر ببرید
فقط آزمون را عوض کنید تا حلقه دورتر برود: for (int n = 1; n <= 5; n = n + 1). شروع و گام همان بمانند. حالا صفحه باید پنج خط نشان دهد: 1، 2، 3، 4، و 5.
using System;
public class Pine
{
public static void Main()
{
for (int n = 1; n <= 5; n = n + 1)
{
Console.WriteLine(n);
}
}
}
این فایل دوم است. فایلی که نگه میدارید نیست. dotnet run را اجرا کنید. صفحه پنج خط نشان میدهد. خط نوشتن را بازنویسی نکردید — فقط آزمون داخل پرانتز for عوض شد. بعد از دیدن پنج خط، فایل نگهداشته را برگردانید: n <= 3 و همان بدنه. هر دو نسخه C# معتبرند. همان شکل for را با نقطهٔ توقف متفاوت آموزش میدهند.
اجرای پنجخطی را یکبار دیگر بخوانید. n از 1 شروع میشود. هر آزمون true مقدار جاری n را مینویسد و بعد 1 اضافه میکند. وقتی n به 6 برسد، آزمون شکست میخورد و حلقه میایستد. رقم 6 در این دمو روی صفحه ظاهر نمیشود، چون بدنه فقط تا وقتی آزمون هنوز true است اجرا میشود.
قاعدههایی که حلقه را روشن نگه میدارند
پرانتز دور سه بخش لازم است. نوشتن for int n = 1; n <= 3; n = n + 1 { … } بدون پرانتز بیرونی باعث میشود build خطا بنویسد. سمیکالن سه بخش داخل آن پرانتز را جدا میکند. بدنهٔ این صفحه همیشه داخل آکولاد است. C# یک بدنهٔ یکخطی بدون آکولاد را اجازه میدهد، اما خط دوم زیر for بیرون حلقه میماند مگر آکولاد هر دو خط را بپیچد. در هر دو دمو آکولاد نگه دارید تا بدنه روشن باشد.
for نه switch است و نه if. switch (choice) یکبار میان برچسبهای ثابت case انتخاب میکند. if (ready) از true یا false یکی از دو مسیر را برمیگزیند. for همان بدنهٔ آکولاد را تکرار میکند وقتی شمارنده حرکت میکند. یک switch یا if را در همان Main نگذارید و تعجب نکنید چرا صفحه mid یا pass نشان میدهد نه 1، 2، 3. Main این جلسه باید فقط حلقهٔ for را نگه دارد.
اشتباه رایج نوشتن خود نحو است: Console.WriteLine("for");. آن خط نویسههای for را مینویسد. تکرار نمیکند. اشتباه دیگر گذاشتن گیومه دور n در بدنه است: Console.WriteLine("n"); روی هر گذر حرف n را مینویسد، نه عدد در حال عوضشدن را. وقتی میخواهید شمارنده روی صفحه باشد، Console.WriteLine(n) را بدون گیومه نگه دارید.
گام n = n + 1 در کدهای بعدی که جای دیگر میبینید میتواند بهصورت n++ هم نوشته شود. این صفحه n = n + 1 را نگه میدارد تا هر علامت روی خط کلمهای یا عددی باشد که از قبل بلد خواندنش هستید. شروع میتواند از 0 بهجای 1 باشد وقتی درسی به آن نیاز دارد؛ اینجا هر دو دمو از 1 شروع میکنند تا اولین خط نوشته با اولین شماری که بلند گفته میشود جور باشد. اگر آزمون از همان اول false باشد — مثلاً n از 1 شروع شود و آزمون بگوید n <= 0 — بدنه هرگز اجرا نمیشود و صفحه خالی میماند. آن هم هنوز یک for معتبر است؛ دموهای این درس آزمونی نگه میدارند که دستکم یکبار true باشد تا خطهای نوشته را ببینید.
حالا میتوانید یک for با شروع، آزمون، و گام بنویسید، یک خط نوشتن داخل آکولاد بگذارید، و ببینید شمارنده روی خطهای پشتسرهم ظاهر میشود. عوض کردن آزمون تعداد خطها را عوض میکند. صفحهٔ بعد while است، جایی که آزمون جای خودش را دارد و گام داخل بدنه نوشته میشود، نه داخل پرانتز for.
صفحه همان شمارندهٔ در حال عوضشدن است
فایلی که نگه میدارید 1، بعد 2، بعد 3 مینویسد. نام n روی خط نوشتن است، و حرف n روی صفحه نیست. سه بخش داخل پرانتزاند، و بهصورت یک خط سرصفحه روی صفحه نیستند. گیومه دور n یا دور for حرف مینویسد، نه مسیر شمارنده را.
🧠 دانش خود را بیازمایید
دانش خود را بیازمایید
خود را با این آزمون تعاملی به چالش بکشید و ببینید موضوع را چقدر خوب درک کردهاید
📝 دستورالعملها
- هر سوال را با دقت بخوانید
- بهترین پاسخ را برای هر سوال انتخاب کنید
- میتوانید آزمون را هر چند بار که میخواهید تکرار کنید
- پیشرفت شما در بالا نمایش داده میشود