수색…


소개

델파이 언어는 3 가지 유형의 루프를 제공합니다.

for - 정수, 문자열, 배열 또는 열거 형에 대한 고정 시퀀스 반복자

repeat-until - quit 조건은 매 턴마다 점검하고 루프는 최소한 한 번 실행한다. tmeeven

while do -do 조건은 매 턴마다 점검되기 전에 루프가 실행되지 않을 수 있습니다.

통사론

  • OrdinalVariable : = LowerOrdinalValue to UpperOrdinalValue do begin {loop-body} end;
  • OrdinalVariable : = UpperOrdinalValue downto LowerOrdinalValue do begin {loop-body} end;
  • Collection의 EnumerableVariable에 대해 begin begin {loop-body} end;
  • {break-condition}까지 {loop-body}를 반복하십시오;
  • while {condition} do begin {loop-body} end;

루프에서 끊기 및 계속하기

program ForLoopWithContinueAndBreaks;

{$APPTYPE CONSOLE}

var
  var i : integer;
begin
  for i := 1 to 10 do
    begin
      if i = 2 then continue; (* Skip this turn *)
      if i = 8 then break;    (* Break the loop *)
      WriteLn( i );
    end;
  WriteLn('Finish.');
end.

산출:

1

4
5
6
7
끝.

반복 - 끝까지

program repeat_test;

{$APPTYPE CONSOLE}

var s : string;
begin
  WriteLn( 'Type a words to echo. Enter an empty string to exit.' );
  repeat
    ReadLn( s );
    WriteLn( s );
  until s = '';
end.

콘솔의 짧은 예제 print Type a words to echo. Enter an empty string to exit. , 사용자 유형을 기다리고, 그것을 반복하고 사용자가 빈 문자열을 입력 할 때까지 무한 루프에서 다시 입력을 기다립니다.

동안

program WhileEOF;
{$APPTYPE CONSOLE}
uses SysUtils;

const cFileName = 'WhileEOF.dpr';
var F : TextFile;
s : string;
begin
  if FileExists( cFileName )
    then
      begin
        AssignFile( F, cFileName );
        Reset( F );

        while not Eof(F) do
          begin
            ReadLn(F, s);
            WriteLn(s);
          end;

        CloseFile( F );
      end
    else
      WriteLn( 'File ' + cFileName +  ' not found!' );
end.

이 예에서는 While not(EOF) 조건을 사용하여 WhileEOF.dpr 파일의 텍스트 내용을 콘솔에 인쇄합니다. 파일이 비어 있으면 ReadLn-WriteLn 루프가 실행되지 않습니다.



Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow