گاهی اوقات نیاز میشود که حلقه ای برعکس شرایط عادی ، یعنی کاهشی بنویسم.
برای مشخص نمودن افزایشی یا کاهشی بودن for از دو کلمه ی کلیدی to برای افزایشی کردن حلقه و downto برای کاهشی کردن حلقه استفاده می گردد.
توضیح: حلقه ی افزایشی به حلقه ای گفته می شود که در آن مقدار اندیس حلقه در هر بار تکرار حلقه افزایش می یابد ولی حلقه ی کاهشی در هر تکرار حلقه مقدار اندیس حلقه را کاهش می دهد.
افزایشی
for variable := start to finish do
// code
مثال :
for i := 0 to 10 do
Memo1.Lines.Append(IntToStr(i));
کاهشی :
for variable := start downto finish do
// code
مثال :
for i := 10 downto 0 do
Memo1.Lines.Append(IntToStr(i));