گام نهم: حلقه ها در برنامه نویسی متلب
ممکن است این موقعیت هنگامی وجود داشته باشد که شما نیاز به اجرای یک بلاک از تعدادی کد در زمان دارید. عموماً ، عبارات به ترتیب اجرا می شوند. اولن عبارت در یک تابع نخست لرا می شود، به دنبال آن دومی، زبان های برنامه نویسی ساختار کنترلی متفاوتی فراهم می کنند که اجازه روش های اجرایی پیچیده را می دهد.
یک عبارت حلقه به ما برای اجرا یک عبارت یا گروه از عبارات چند زمانی اجازه می دهد و در ادامه شکل عمومی از یک عبارت حلقه است که در اکثر زبان های برنامه نویسی وجود دارد.
متلب انواع حلقه های زیر که رسیدگی به تجهیزات حلقه را دارد را فراهم می کند.
لینک های زیر جزئیات آن ها را بررسی میکند:
توصیف | نوع حلقه |
تکرار یک عبارت یا گروهی از عبارات هنگامی که شرط ها درست است.این شرط ها را قبل از اجرای بدنه حلقه اجرا می کند. | while loop |
اجرای دنباله ای از چندین بار یک عبارت و کدهای مدیریت متغیر حلقه را خلاصه می کند. | for loop |
شما می توانید از یک یا حلقه های بیشتری درون یک حلقه دیگری استفاده نمایید. | nested loops |
حلقه while
حلقه while loop اجرای عبارات را زمانی که شرط درست است. اجرا می کند .
نحوه اجرا در متلب:
نحوه اجرا در متلبی از یک حلقه while در متلب است:
while loop تکراری عبارات برنامه را تا زمانیکه عبارات باقی مانده درست است اجرا می کند.
عبارات درست است زمانی که نتیجه خالی نیست و همه عناصر غیر صفر را دربر دارد (اعداد حقیقی و منطقی).در غیر اینصورت عبارات نادرست هستند.
مثال
یک فایل اسکریپت ایجاد نمایید و کد زیر را تایپ کنید:
a = 10;
% while loop execution
while( a < 20 )
fprintf(‘value of a: %d\n‘, a);
a = a + 1;
end
زمانی که شما فایل را اجرا نمایید، نتیجه زیر نمایش داده می شود:
گام دهم: حلقه تو در تو
متلب اجازه به استفاده از یک حلقه در یک حلقه دیگر می دهد. در ادامه بخش تعداد کمی مثال از این مفهوم را شرح می دهیم.
نحوه اجرا در متلب:
نحوه اجرا در متلب زیر برای عبارت حلقه تودرتو در زیر آمده است:
مثال
به ما اجازه دهید با استفاده از یک حلقه for تو در تو اعداد اول از 1 تا 100 را نمایش دهیم .یک فایل اسکریپت ایجاد کنید و کد زیر را در آن تایپ نمایید:
for i=2:1oo
for j=2:1oo
if )~ m<>d)i,j((
break; % if factor found, not prime
end
end
if (j > (i/j ( )
fprintf(‘%d is prime\n‘, i);
end
end
زمانی که شما فایل را اجرا می کنید ، نتایج زیر را نمایش می دهد:
عبارت های کنترل حلقه
عبارات کنترل حلقه اجرا را از ترتیب معمولی تغییر می دهند. هنگامی که اجرا یک حوزه را ترک می کند، متلب کلیه شی ء های خودکار که در آن حوزه ایجاد شده بودند را از بین می برد.
متلب عبارات کنترلی زیر را پشتیبانی می کند.بر روی لینک های زیر کلیک نمایید و جزئیات آن ها را بررسی نمایید.
توصیف | عبارات کنترل |
دستورات حلقه را خاتمه دهید و اجرا را سریعاً به ادامه حلقه انتقال دهید. | عبارت شکسته |
باعث می شود حلقه باقی مانده از بدنه پرش کند و سریعاً مجدد شرایط قبلی را تکرار کند. | عبارت متصل |
دستورات شکستن برنامه
دستور شکست اجرا را از for یا while پایان می دهد .عبارات در حلقه پس از دستورات شکست اجرا نمی شوند.
در حلقه تو در تو ، شکست تنها از حلقه ای که در آن (شکست) رخ دادهاست ایجاد می شود.
فلوچارت:
مثال دستورات شکستن برنامه:
یک فایل اسکریپت ایجاد نمایید و کد زیر را تایپ کنید:
a = 10;
% while loop execution
while (a < 20 )
fprintf(‘value of a: %d\n‘, a);
a = a+1;
if( a > 15)
% texminate the loop using break statement
break;
end
end
زمانیکه شما فایل را ایجاد کنید، نتیجه زیر نمایش می یابد:
دستورات ادامه دادن برنامه
دستورات ادامه برای عبور کنترل به مرحله بعد از for یا while loop استغاده می شود.
دستورات ادامه در متلب تا حدی مانند دستورات شکست کار می کنند. بجای خاتمه اجباری، اگرچه، ‘continue’ اجباراً رفتن به مرحله بعد صورت می گیرد،از هر کد میانی پرش می کند.
فلوچارت:
مثال دستورات ادامه دادن برنامه
یک فایل اسکریپت ایجاد نمایید و کد زیر را در آن تایپ کنید:
a = 10;
%while loop execution
while a < 20
if a == 15
% skip the iteration
a = a + 1;
continue;
end
fpxintf(‘value of a: %d\n‘, a);
a = a + 1;
end
زمانی که شما فایل را اجرا کنید، نتیجه زیر نمایش می یابد:
خرید کتاب 28 گام موثر در فتح متلب