ไวยากรณ์ Control Structure


        โปรแกรมทุกโปรแกรมสามารถเขียนขึ้นได้โดยใช้โครงสร้างมาทำการควบคุมเพียง 3 ชนิดเท่านั้น คือ
      โครงสร้างตามลำดับ (Sequence structure)
      โครงสร้างทางเลือก (Selection structure)
      โครงสร้างการทำซ้ำ (Repetition structure)

>>>โครงสร้างตามลำดับ (Sequence structure)
        เป็นโครงสร้างของคำสั่งที่คอมพิวเตอร์จะทำงานไปตามลำดับที่เขียนไว้ ถ้าไม่ได้เปลี่ยนขั้นตอนการทำงานหรือมีเงื่อนไขเพิ่มเติม
>>>โครงสร้างตามลำดับ (Sequence structure)กำหนดค่า x=0, y=0
          รับค่า จากผู้ใช้
          รับค่า จากผู้ใช้
          คำนวณ z = x^2+3y
         พิมพ์ค่า ทางจอภาพ

>>>โครงสร้างทางเลือก (Selection structure)
                 โครงสร้างแบบทางเลือก if คือ โครงสร้างสำหรับใช้เลือกทำคำสั่ง (หรือกลุ่มคำสั่ง) โดยอาศัยการตรวจสอบเงื่อนไข  ซึ่งมี 3 รูปแบบคือ
        1. หนึ่งทางเลือก (One Alternative)
        2. สองทางเลือก (Two Alternative)
        3. หลายทางเลือก (Multiple-Alternative)
==>โครงสร้างแบบทางเลือก  if  หนึ่งทางเลือก
        โครงสร้างแบบนี้ จะเลือกทำคำสั่ง (หรือกลุ่มคำสั่ง) ก็ต่อเมื่อ ตรวจสอบเงื่อนไขแล้วเป็นจริง


รูปแบบของโครงสร้างแบบทางเลือก if หนึ่งทางเลือก
if (condition)
        {                                                                                                                                                               
             Do When Condition = True ;
        }
ตัวอย่างของโครงสร้างแบบทางเลือก if หนึ่งทางเลือก
       ตัวอย่าง1 :                                                                                                                                              
                     if (x >0)
                     total = total * x;
ตัวอย่าง2 :
             if (x>y)  {
                       temp=x;
                      x=y;
                      y=temp;
                 }

 ==>โครงสร้างแบบทางเลือก if สองทางเลือก
                    โครงสร้างแบบนี้มีสองทางเลือก กล่าวคือ เลือกทำคำสั่ง (หรือกลุ่มคำสั่ง) เมื่อตรวจสอบเงื่อนไขแล้วเป็นจริง หรือ ทำคำสั่ง (หรือกลุ่มคำสั่ง) เมื่อตรวจสอบเงื่อนไขแล้วเป็นเท็จ
        ตัวอย่าง Flowchart ของโครงสร้างแบบทางเลือก if สองทางเลือก

                                                                                                                                  
รูปแบบของโครงสร้างแบบทางเลือก if สองทางเลือก
รูปแบบการทำกลุ่มคำสั่ง :
             if (condition)    {
                     true task;
                                }
                            else {
                                       false task;
                   }

ตัวอย่างของโครงสร้างแบบทางเลือก if สองทางเลือกตัวอย่าง1 :
           if (x >0)
                  console.WriteLine ("positive\n”);
             else
                console.WriteLine (negative\n);


ตัวอย่าง 2 :                                                                                                                                    
        if (x>y) {                                                                                                                                
                 temp = x ;
                  x=y ;
                  y=temp ;
         }
              else {                                                                                                                                 
         cout << “ x smaller y\n”;
}


  ==>โครงสร้างแบบทางเลือก if หลายทางเลือก
       รูปแบบ:
                if (condition 1)
                            statement 1;
                   else if (condition 2)
                             statement 2;
                      :
                      :
               else if (condition n)
                            statement n;
                 else
                           statement;
        ตัวอย่างของโครงสร้างแบบทางเลือก if หลายทางเลือก
           if (x > 0)
                 num_pos = num_pos + 1;
               else if (x < 0)
                     num_neg = num_neg + 1;
               else
                      num_zero = num_zero + 1;

  
==>โครงสร้างแบบหลายทางเลือก switch
                   โครงสร้างแบบหลายทางเลือก switch จะถูกใช้บ่อยในกรณีของ การเลือกหนึ่งทางเลือกในหลายๆทางเลือก  โดยค่าที่ใช้ตรวจสอบ จะต้องเป็นจำนวนเต็ม (int) หรือ ข้อมูลชนิดตัวอักษร(char)  แต่จะต้องไม่เป็นจำนวนจริงแบบยาว(double) โดยอาจจะอยู่ในรูปของตัวแปรนิพจน์ หรือฟังก์ชันก็ได้
        รูปแบบ:  switch (controlling expression)
         {
          case lable_set1:
                        statements1
                        break;
          case label_set2:
                       statements2
                       break;
           :
           :
          case lable_setn:
                       statementsn
                       break;
          default :
                     }
        ตัวอย่างของโครงสร้างแบบหลายทางเลือก switch
switch (ch)
{
       case ‘B’ :
       case ‘b’ :
                  Console.WriteLine(“Bat”);
                  break ;
        case ‘C’ :
        case ‘c’  :
                   Console.WriteLine(“Cat”);
                  break ;
        default :
                      Console.WriteLine(“Unknow” + ch);
}
                                                                                                                                                          
>>>โครงสร้างแบบการทำซ้ำ for
        เป็นโครงสร้างที่ใช้สำหรับทำซ้ำคำสั่ง โดยการทำงานของการทำซ้ำ จะขึ้นอยู่กับองค์ประกอบที่สำคัญ 3 ส่วนคือ
      1. ค่าเริ่มต้นของตัวแปรควบคุมการทำซ้ำ
      2. ส่วนตรวจสอบเงื่อนไข
      3. ส่วนเปลี่ยนแปลงค่าของตัวแปรควบคุมการทำซ้ำ

รูปแบบของโครงสร้างการทำซ้ำ for
        รูปแบบ: for (initialization expression ;                                                                               
                       loop repetition condition ;                                                                                                                
   update expression)
         
ตัวอย่างของโครงสร้างการทำซ้ำ for
          ตัวอย่าง: /*Display N asterisks*/
for (count = 0 ; count < 10 ; count += 1)
    {
          console.WriteLine (‘*’);
   }

ตัวอย่างของโครงสร้างการทำซ้ำ for
       ตัวอย่าง: /*Display Round No.*/
               int i;
              for (i = 1; i <5; i += 1)
                    console.WriteLine “Round : “ + i;
ผลลัพธ์:
Round : 1
Round : 2
Round : 3
Round : 4

>>>โครงสร้างแบบการทำซ้ำ while
        เป็นโครงสร้างที่ใช้ในการทำซ้ำคำสั่งต่าง ๆ โดยจะมีการตรวจสอบเงื่อนไข ซึ่ง
      กรณีที่ผลลัพธ์ของเงื่อนไขไม่เท่ากับศูนย์ (จริง)  จะทำคำสั่งหรือกลุ่มคำสั่งในแต่ละรอบ
      ส่วนกรณีที่ผลลัพธ์ของเงื่อนไขเท่ากับศูนย์ (เท็จจะหยุดทำคำสั่งหรือกลุ่มคำสั่งในรอบ โดยข้ามไปทำคำสั่งถัดไปจากรอบของโครงสร้าง while เลย

รูปแบบของโครงสร้างการทำซ้ำ while
รูปแบบ:
            while (loop repetition condition)
           {
                statement;                                                                                                                      
          }

ตัวอย่าง:   /*Display N asterisks.*/
               int count = 0;
               while (count < 10)
               {                                                                                                                                   
                   console.WriteLine (‘*’);
                   count = count + 1;
 }
        ผลลัพธ์:
              **********

ตัวอย่าง: /*Display Round No.*/
               int i = 1;
                 while (i < 5)
              {                                                                                                                                    
                     console.WriteLine(“Round : “+ i );
                      i = i + 1;                                                                                                                                                            
           }

ผลลัพธ์:
                Round : 1
                Round : 2
              Round : 3
                Round : 4

>>>โครงสร้างแบบการทำซ้ำ do/while
                   โครงสร้างแบบการทำซ้ำ while และ for  จะต้องมีการตรวจสอบค่าของเงื่อนไขก่อนว่าเป็นจริงหรือเท็จ  ก่อนที่จะทำคำสั่ง (กลุ่มคำสั่งภายในรอบ  แต่การทำงานบางลักษณะจะต้องทำคำสั่งภายในรอบก่อนอย่างน้อย 1 ครั้ง  ซึ่งการทำงานในลักษณะที่กล่าวนี้สามารถใช้คำสั่ง do-while ได้
         
                      รูปแบบของโครงสร้างการทำซ้ำ do/while
        รูปแบบ:
        do  {
                     statement;
         }
             while (loop repetition condition);

        ตัวอย่างของโครงสร้างการทำซ้ำ do/while
ตัวอย่าง/* Display Round No.*/
      int i=1;
          do  {
                 console.WriteLine(“Round : “+ i );
                  i = i + 1;
    }
         while ( i < 5);
ผลลัพธ์:
      Round : 1
     Round : 2
     Round : 3
     Round : 4

<<>>ความแตกต่าง While กับ Do/While
  int i = 5;
     while (i < 5)  {
    console.WriteLine( “while Round : “+ i );
    i = i + 1;                                                                                                                                            
}
     i=5;
do
{
    console.WriteLine(“do-while Round : “+ i);
    i = i + 1;                                                                                                                                                                 
while ( i < 5);

>>>คำสั่ง break และ continue
                 It's time now to talk about break and continue. Remember that, these two statements are usingin loop structures. Like for, while, do while and …. Let's see the usage of them in an example.
        If you run the following code snippet you will see that when i =5 the code will stop. It means although i is less that 100 but the rest of code won't execute.
         
         
       for (int i = 1; i < 100; i++)
            {
                 if (i%5 == 0)
              {
                   Console.WriteLine("Hope!");
                   break ;
            }
              Console.WriteLine(i);


       }

ไม่มีความคิดเห็น:

แสดงความคิดเห็น