หน้าเว็บ

วันอาทิตย์ที่ 9 ธันวาคม พ.ศ. 2555

กลุ่มคำสั่งตัดสินใจเลือกทำ (Selection)


โครงสร้างการควบคุมโปรแกรมหรือ ประโยคคำสั่งในการควบคุมโปรแกรม(Control Structure) เป็นสิ่งที่จำเป็นเสมอสำหรับภาษาเขียนโปรแกรมทุก ๆ ภาษาเพียงแต่ในแต่ละภาษาจะมี Syntax การใช้งานที่แตกต่างกันบ้างเล็กน้อย ดังนั้นหากคุณมีความแม่นยำในรูปแบบหรือ Syntax การใช้งาน ก็จะทำให้การเขียนโปรแกรมนั้นดูง่ายขึ้นและลดข้อผิดพลาดของการเขียน Code ได้
      กลุ่มคำสั่งตัดสินใจเลือกทำ(Selection)
กลุ่มคำสั่งในการเลือกทำ(Selection) หรือบางภาษาอาจใช้คำว่า กลุ่มคำสั่งในการตัดสินใจเลือก
ทำงาน (Decision) ซึ่งลักษณะการทำงานของกลุ่มคำสั่งเหล่านี้ ต้องอาศัยการเปรียบเทียบเงื่อนไขเพื่อ
ตัดสินใจ ผลลัพธ์ของการเปรียบเทียบจะได้ค่าจริงกับเท็จ (True / False) โดยใช้เครื่องหมายในการ
เปรียบเทียบค่า (Comparison Operator) เข้ามาใช้ร่วมด้วย (ดูบทที่ 2) ซึ่งกลุ่มคำสั่งในการตัดสินใจเลือกทำจะสามารถจำแนกคำสั่งออกเป็น 2 กลุ่ม ได้แก่ การใช้ IF และ Switch..Case
        การใช้ If
If แปลว่า “ ถ้า” ดังนั้นฟังจากชื่อแล้วคำสั่งนี้จะทำงานได้ต้องอาศัยการเปรียบเทียบ
เงื่อนไขจริงและเท็จก่อนทุกครั้ง โดยเราสามารถจำแนกรูปแบบการใช้ if ออกเป็น 3 รูปแบบ ได้แก่ if,
if..else และ else..if
- การใช้ if โดยปราศจาก else
หมายถึงจะทำงานเมื่อเงื่อนไขเป็นจริงเท่านั้น
Syntax:



 Note: เห็นได้ว่า Syntax การใช้ if ในภาษา Java นั้น หลัง if ไม่มีคำว่า Then และไม่ต้องจบ if ด้วยคำ ว่า“end if” ดังนั้นถ้าคุณมีความคุ้นเคยกับ Syntax ของภาษาอื่นก็ต้อง ก็ต้องปรับความคุ้นเคยกันสักนิด

ตัวอย่างโปรแกรม : ถ้าค่าของตัวแปรหารด้วย 2 แล้วได้เศษเท่ากับศูนย์ ให้ทา งานในส่วนของ if
Output : 
The number is even

Source Code:
1 //Progif.java
2 public class Progif {
3 public static void main (String agrs[])
4 {
5 int i = 10;
6 if (i %2==0)
7 System.out.println ("The number is even");
8 } //end main()
9 } //end class

- การใช้ if..else
    จะทำงานในส่วนของ if เมื่อเงื่อนไขเป็นจริง และทำงานในส่วนของ else เมื่อเงื่อนไขเป็นเท็จ
Syntax:






ตัวอย่างโปรแกรม : ถ้าค่าของตัวแปรหารด้วย 2 แล้วได้เศษเท่ากับศูนย์ ให้ทำงานในส่วนของ if แต่ถ้าไม่ใช่ให้ไปทำงานในส่วนของ else

Output:
The number is odd

Source Code:
1 //Progif1.java
2 public class Progif1{
3 public static void main (String agrs[])
4 {
5 int i = 13;
6 if (i %2==0)
7 System.out.println ("The number is even");
8 else
9 System.out.println ("The number is odd");
10 } //end main()
11 } //end class





ตัวอย่างโปรแกรม : การใช้ if และ else กับข้อมูลอักขระ
Output:  The character is range A or B

Source Code:
1 //Programor.java
2 public class Programor {
3 public static void main (String agrs[])
4 {
5 char a = 'B';
6 if ((a == 'A') || (a == 'B'))  เงื่อนไข OR
7 System.out.println ("The character is range A or B");
8 else
9 System.out.println ("Out of range");
10 }
11 }


- การใช้ else..if
เราจะใช้ else..if เมื่อต้องการตรวจสอบเงื่อนไข มากกว่า 1 เงื่อนไข
Syntax:

if (condition)
{statement;
statement;}
else if (condition)
{ statement;



ตัวอย่างโปรแกรม : การใช้ else..if กับเงื่อนไข AND
Output:
Value between 0-9

Source Code:
1 //Progif2.java
2 public class Progif2 {
3 public static void main (String agrs[])
4 {
5 int i = 8;
6 if ((i >= 0) && (i <= 9))
7 { System.out.println ("Value between 0-9");}
8 else if ((i >= 10) && (i <=19))
9 {System.out.println ("Value between 10-19");}
10 else if ((i >= 20) && (i <=29))
11 { System.out.println ("Value between 20-29");}
12 else
13 System.out.println ("Out of range");
14 }
15 }


ตัวอย่างโปรแกรม : การใช้ if ซ้อน if
Output:
mark 70-74 Grade = B

Source Code:
1 //Progif3.java
2 public class Progif3 {
3 public static void main (String agrs[])
4 {
5 int i = 72 ;
6 if ((i >= 80) && (i <=100))
7 { System.out.println ("mark 80-100 Grade = A ");}
8 else
9 if ((i >= 75) && (i <=79))
10 {System.out.println ("mark 75-79 Grade = B+");}
11 else
12 if ((i >= 70) && (i <=74))
13 { System.out.println ("mark 70-74 Grade = B");}
14 else
15 System.out.println ("please coding to continue..not complete");
16 }
17 }





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