دستور repeat در پاسکال

دستور repeat در پاسکال
در صورتی که نیاز به اجرای متعددی یک یا چند دستور تا زمان تحقق یافتن یک شرط داشته باشید
بهتر است از دستور repeat استفاده نمایید
شکل کلی دستور repeat به صورت زیر است
repeat دستور ] ; دستور ; [,...] ] until عبارت منطقی ;
دستور یا دستوراتی که در حلقه repeat گنجانده شوند
تا زمانی که نتیجه عبارت منطقی برابر با false است تکرار خواهد شد
برای مثال در برنامه زیر از دستور repeat استفاده شده است
var A : Integer ; begin A := 1; repeat writeln(A); A : A +1; until A =10; end.
برنامه فوق باعث نمایش اعداد از 1 تا 9 خواهد شد
به این دلیل که باتدا متغییر A با عدد 1 مقداردهی میگردد
سپس حلقه repeat اغاز میگردد و عدد 1 نمایش داده میشود
دستور بعدی باعث افزودن یک واحد به متغییر A خواهد شد
سپس شرط A = 10 برسی میشود و با توجه به عدم برقراری شرط حلقه تکرار می گردد
نکــــــــــــــــــــــــــــــــــــــته |
---|
حلقه های repeat حداقل یک بار اجرا خواهند شد به این دلیل که شرط خروج از حلقه در قسمت انتهایی حلقه قرار دارد |
توجه داشته باشید که حتی اگر شرط خروج از حلقه برقرار باشد
حلقه repeat یک مرتبه اجرا میگردد
برای مثال به برنامه زیر توجه کنید
var A : Integer ; begin A := 9; repeat writeln(A); A : A +1; until A =10; end.
برنامه فوق باعث نمایش عدد 9 خواهد شد
در برنامه زیر یک نمونه از کاربردهای دستو repeat نمایش داده شده است
var A,B : Integer ; C : Integer ; begin repeat WritenLn('Enter A and B:'); ReadLn(A,B); WritenLn(A*B); WritenLn('Exit [y/n]?'); ReadLn(c); unti1 c='y'; end.
با اجرای این برنامه پیغامی برای دریافت دو عدد و نمایش درخواهد امد
پس از دریافت اعداد عمل ضرب انها صورت گرفته و نتیجه نمایش داده خواهد شد
سپس پیغامی مبنی بر خروج یا ادامه عملیات نمایان می گردد
در صورتی گه کاراکتر y را وارد نمایید برنامه خاتمه می یابد
و در غیر این صورت کل عملیات مجددا تکرار خواهد شد