Table of Contents

Conditional Statements

If - Statements

Statements Syntax
If..Then
if {Condition} then {Statement}; 
If..Then..Else
if {Condition} then 
  {Statement1}
else
  {Statement2};
If..Then/ Else If..Then/ Else
if {Condition1} then 
  {Statement1}
else if {Condition2} then
  {Statement2}
else
  {Statement3};

จากตารางข้างบน เป็นรูปแบบ If ที่มี statement แค่บรรทัดเดียวต่อหนึ่ง condition เท่านั้น อย่างไรก็ตามหากมี statement หลายบรรทัด ต้องเติม begin .. end ด้วยทุกครั้ง ดังนี้

If-Statement: Multiple Statements

If-Statement: Multiple Statements

If..Then
if {Condition} then 
 begin
  {Statement1};
  {Statement2};
  {...};
 end;
If..Then..Else
if {Condition} then 
 begin
  {Statement1};
  {Statement2};
  {...};
 end
else
 begin
  {Statement3};
  {Statement4};
  {...};
 end;
If..Then/ Else If..Then/ Else
//---Single Statement---
if {Condition1} then 
 begin
  {Statement1};
  {Statement2};
  {...};  
 end
else if {Condition2} then
 begin
  {Statement3};
  {Statement4};
  {...};
 end
else
 begin
  {Statement5};
  {Statement6};
  {...};
 end;


Case - Statements

Statements Syntax
Exact value
//---Single Statement---
case {Var} of 
  1: {Statement1};
  2: {Statement2};
  3: {Statement3};
  else {Statement4};
end; 
Range
case {Var} of 
  1..10: {Statement1};
  11..20: {Statement2};
  21..30: {Statement3};
  else {Statement4};
end; 

จากตารางข้างบน เป็นรูปแบบ Case ที่มี statement แค่บรรทัดเดียวต่อหนึ่ง condition เท่านั้น อย่างไรก็ตามหากมี statement หลายบรรทัด ต้องเติม begin .. end ด้วยทุกครั้ง ดังนี้

Case-Statements: Multiple Statements

Case-Statements: Multiple Statements

Statements Syntax
Exact value
case {Var} of 
  1: begin 
      {Statement1};
      {Statement2};
      ...;
      end;
  2: begin
      {Statement3};
      {Statement4};
      {Statement5};
      ...
      end;
  3: {Statement6};
  else {Statement7};
end; 
Range
case {Var} of 
  1..10: begin 
      {Statement1};
      {Statement2};
      ...;
      end;
  11..20: begin 
      {Statement3};
      {Statement4};
      ...;
      end;
  21..30: begin 
      {Statement5};
      {Statement6};
      ...;
      end;
  else begin 
      {Statement7};
      {Statement8};
      ...;
      end;
end; 


Break, Continue, Exit and Goto

คำสั่ง Break, Continue, Exit และ Goto สรุปได้ดังนี้

Procedures Meaning Format
Break ออกจาก Loop ปัจจุบัน (For/While/Repeat)
  for i:=1 to 10 do
    if i=5 then break;

  writeln('i = ',i);  //i = 5
  readln; 
Continue สิ้นสุด Loop ปัจจุบันทันที เพื่อเริ่ม Loop ปัจจุบันใหม่ในรอบถัดไป (For/While/Repeat)
  for i:=1 to 5 do
  begin
    if i=4 then continue;
    writeln('i = ',i); //i = 4 won't be showed
  end; 
Exit ออกจาก Sub-Program ปัจจุบัน (Procedure/Function)
procedure MyProc;
begin
  exit;
  writeln('After Exit'); //This won't be shown
end;
Goto ไปยัง Label ที่ระบุ
label PointA,PointB; //declare labels
BEGIN
 Goto PointB;
 PointA:
 wrtieln('Passing PointA');
 exit; //Exit the program
 PointB:
 wrtieln('Passing PointB');
 Goto PointA;
END.