خب با یکی دو تا مثال ساده حلقه تو در تو رو توضیح میدم. امیدوارم مفید باشد.
شما هم حتما" آنها را با توجه به توضیحاتی که میدم، سعی کنید برنامه رو بنویسید... البته منظورم تو محیط C است...
خب میخواهیم شکل زیر را با استفاده از حلقه های تو در تو چاپ کنیم... (ساده ترین حالت ممکن)
خب اگر به شکل دقت کنید... میبینید که شکل ما شامل 3 ردیف یا سطر و 5 ستون میباشد...
برای این شکل از دو حلقه استفاده میشود...
یک حلقه برای پیمایش سطر ها (مثلا i)... دیگری برای پیمایش ستون ها (مثلا j)...
خب حالا از کجا بفهمیم که حلقه اول باید از چند تا چند باشد؟ از تعداد سطرهای شکل... پس تعداد تکرار حلقه ی اول همان تعداد سطرها است... در نتیجه حلقه بیرونی برای شمارش و پیمایش سطر استفاده میشود... در این شکل باید از 1 تا 3 باشد و یکی یکی زیاد شود... (خط 1 کد)
حلقه دوم یا همان حلقه ی داخلی هم برای پیمایش در ستون ها استفاده میشود... در این شکل شمارنده حلقه داخلی از 1 تا 5 است... (خط 2 کد)
برای چاپ هم چون تمام سطرها و ستون ها یک شکل هستند (همشون کاراکتر ستاره هستند) فقط یک دستور چاپ داریم... (خط 3 کد)
نکته: حتما میدانید که برای رفتن به خط بعدی در C باید از دستور پرینت n\ استفاده شود... (خط 4 کد)
خب فکر کنم دیگه نوشتن کد با توجه به توضیحات بالا کار سختی نباشد... کد هم پایین نوشتم... سعی کنید اول خودتان بنویسید...
کد: انتخاب همه
1- for (i=1;i<=3;i++)
{
2- for (j=1;j<=5;j++)
3- printf ("*");
4- printf ("\n");
}
تو کد بالا هم علامت کروشه برای حلقه i است... چون دو دستور دارد... ( اولی حلقه j و دومی اضافه کردن خط جدید با دستور پرینت)
برای حلقه ی j هم کروشه نداریم چون یک دستور باید داخل حلقه اجرا شود... (دستور پرینت ستاره)
راستی شرمنده انقدر توضیح دادم... بنا به درخواست خود شما بود...