Pascal 언어의 for 반복문 양식은

       for varName := startValue to finalValue do
     begin
             block;
     end;

또는 

       for varName := startValue downto finalValue do
     begin
             block;
     end;


* Pascal 언어의 for 반복문에는 step 이 없다.

* Pascal 언어는 C 언어와 달리 변수명과 프로시듀어명, 함수명에 대소문자를 구별하지 않는다. 즉, 아래의 소스에서 변수명 dan 과 Dan 은 같은 것아고,  프로시듀어명 printDan 과 PrintDan 은 같은 것아다.

* C 언어에서 void 함수라고 하는 것 즉 리턴값이 없는 함수를 Pascal 언어에서는 function 이라 하지 않고 procedure 라고 한다. 즉 리턴값의 있고 없고에 따라 function 과 procedure 를 엄격히 구분한다.


procedure 의 구문은

        procedure 프로시듀어명(변수들);
        const
            상수명 : 타입 = 값;
        var
            변수명 : 타입 = 값;
        begin
            블록;
        end

이고, function 의 구문은

        function 함수명(변수들) : 리턴타입;
        const
            상수명 : 타입 = 값;
        var
            변수명 : 타입 = 값;
        begin
            블록;
            함수명 := 리턴값;
        end


* Pascal 언어에서는 각 구문의 끝에 세미콜론(;)을 붙여야 할지 말아야 할지를 반드시 지켜야 한다, 예를 들어, if ... then ... else .... 조건문에서

      if 조건절 then
        begin
            라인1;
            라인2;
            라인3;
        end     (* 여기는 else 직전이므로 세미콜론이 없어야 한다. *)
      else
        begin
            라인1;
            라인2;
            라인3; 
        end      (* 여기는 end 직전이므로 세미콜론이 없어야 한다. *)
    end;


* 더 자세한 것은 http://wiki.freepascal.org/IF 를 참조

* C 언어 사용자를 위한 Free Pascal: http://wiki.freepascal.org/Pascal_for_C_users

* Free Pascal 로 하는 Canvas 드로우잉 프로그래밍: http://wiki.freepascal.org/Drawing_with_canvas

* Pascal 언어로 작성된 소스의 끝은 반드시 end. 로 끝나야 한다.
  여기서 end 다음에 마침표(.)가 있는 것이 매우 중요함.

'
소스 파일명: for_test.pas
------------------------------[소스 시작]

(******************************************) (* Filename: for_test.pas *) (* *) (* Compile: fpc for_test.pas *) (* Execute: for_test *) (******************************************) program Gugudan; var dan : integer; procedure PrintDan(Dan : integer); (* 매개변수(parameter) dan 으로 넘어온 *) (* 구구단 표를 출력한다. *) var i : integer; begin for i := 1 to 9 do begin writeln( dan, ' x ', i, ' = ', dan*i:2 ); end end; begin dan := 2; printDan(dan); end. ------------------------------[소스 끝]

컴파일> fpc for_test.pas
실행> for_test
2 x 1 =  2
2 x 2 =  4
2 x 3 =  6
2 x 4 =  8
2 x 5 = 10
2 x 6 = 12
2 x 7 = 14
2 x 8 = 16
2 x 9 = 18



Posted by Scripter

댓글을 달아 주세요