본문 바로가기

Operating System Theme/Mac OS (Classic)

Object Pascal 속성 문법 #2 조건문과 반복문

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

조건문

조건 연산자

파스칼의 조건 연산자는 다음과 같다.

=
두 대상의 같음 여부를 판단한다.
<>
두 대상의 다름 여부를 판단한다.
<, <=, >=, >
정수, 실수형 변수에 대하여 두 대상의 대소관계를 나타내고, 집합형 변수에 대하여 두 대상의 포함 관계를 나타낸다.

 

if-else 문

if-else 문은 C 언어의 if 문과 같다.

if (* TODO: condition *) then (* TODO: 한 줄 구문 *);
if (* TODO: condition *) then
begin
    (* TODO: 여러 줄 구문 *);
end;

여러 조건을 이어서 쓸 경우,

if (* TODO: condition *) then (* TODO: 한 줄 구문 *)
else if (* TODO: condition *) then (* TODO: 한 줄 구문 *);
if (* TODO: condition *) then
begin
    (* TODO: 여러 줄 구문 *)
end
else if (* TODO: condition *) then
begin
    (* TODO: 여러 줄 구문 *)
end;

제시된 조건에 없는 경우 실행할 문장에 대하여,

if (* TODO: condition *) then (* TODO: 한 줄 구문 *)
else if (* TODO: condition *) then (* TODO: 한 줄 구문 *)
else (* TODO: 한 줄 구문 *);
if (* TODO: condition *) then
begin
    (* TODO: 여러 줄 구문 *)
end
else if (* TODO: condition *) then
begin
    (* TODO: 여러 줄 구문 *);
end
else
begin
    (* TODO: 여러 줄 구문 *)
end;

 

case-else 문

case문은 한 변수가 가질 수 있는 경우를 나열하는 조건문으로 C 언어의 switch-case-default문과 동일하다.

case [variableName] of
    [value]:
        (* TODO: 여러 줄 구문 *);
    else
        (* TODO: 여러 줄 구문 *);
end;

 

반복문

for 문

C 언어와 다르게 파스칼의 for문은 카운트 변수의 증감으로 +1 또는 -1만을 사용한다.

먼저 증분이 +1인 경우의 for문은,

for [variableName] := [valueStart] to [valueEnd] do (* TODO: 한 줄 구문 *);
for [variableName] := [valueStart] to [valueEnd] do
begin
    (* TODO: 한 줄 구문 *);
end;

먼저 증분이 -1인 경우의 for문은,

for [variableName] := [valueStart] downto [valueEnd] do (* TODO: 한 줄 구문 *);
for [variableName] := [valueStart] downto [valueEnd] do
begin
    (* TODO: 한 줄 구문 *);
end;

 

while 문

while 문은 조건식이 참이면 구문을 반복하는 구문이다. C 언어의 while과 같다.

while (* TODO: condition *) do (* TODO: 한 줄 구문 *);
while (* TODO: condition *) do
begin
    (* TODO: 여러 줄 구문 *);
end;

 

repeat-until 문

repeat-until문은 조건식이 참이면 반복을 멈추는 구문으로서 C 언어의 do-while문과 비슷하나 조건식이 반대이다. 자체적으로 여러 줄 구문을 적을 수 있는 구조로 되어 있기 때문에 별도의 begin/end 키워드가 필요하지 않다.

repeat
    (* TODO: 여러 줄 구문 *)
until (* TODO: condition *);