Mega Code Archive

 
Categories / Delphi / Keywords
 

For - starts a loop that executes a finite number of times

1 for Variable := Integer Expression to|downto Integer Expression do Statement; 2 for Variable := Char Expression to|downto Char Expression do Statement; 3 for Variable := Enum Expression to|downto Enum Expression do Statement; Description The For keyword starts a control loop, which is executed a finite number of times. The Variable is set to the result of the 1st Expression. If the result is less than the result of the 2nd Expression (when to is specified), then the Statement is executed. Variable is then incremented by 1 and the process is repeated until the variable value exceeds the 2nd expression value. For downto, the variable value is checked as being greater than the 2nd expression, and its value is decremented at the loop end. The Expressions may result in any Ordinal type - Integers, Characters or Enumerations. The Statement maybe a single line, or a set of statements with a begin/end block. Notes The loop Variable value is not guaranteed by Delphi at loop end. So do not use it! Related commands Begin Keyword that starts a statement block Do Defines the start of some controlled action DownTo Prefixes an decremental for loop target value End Keyword that terminates statement blocks Repeat Repeat statements until a ternmination condition is met To Prefixes an incremental for loop target value Until Ends a Repeat control loop While Repeat statements whilst a continuation condition is met Example code : Integer for loop var i : Integer; begin // Loop 5 times For i := 1 to (10 div 2) do ShowMessage('i = '+IntToStr(i)); end; Show full unit code i = 1 i = 2 i = 3 i = 4 i = 5 Example code : Character for loop var c : char; begin // Loop 5 times - downwards For c := 'E' downto 'A' do ShowMessage('c = '+c); end; Show full unit code c = E c = D c = C c = B c = A Example code : Enumeration for loop var suit : (Hearts, Clubs, Diamonds, Spades); begin // Loop 3 times For suit := Hearts to Diamonds do ShowMessage('Suit = '+IntToStr(Ord(suit))); end; Show full unit code Suit = 0 Suit = 1 Suit = 2