Just another WordPress.com site

โครงสร้างเลือกปฏิบัติ หรือจะเรียกว่า double standard ก็น่าจะได้มั้ง 5555…

ใน C++ จะมีอยู่ 2 โครงสร้างคือ

1. โครงสร้าง if…..else

2. โครงสร้าง switch

ผมจะเริ่มต้นพูดถึงโครงสร้าง if…..else ก่อนละกันครับ

โดยเริ่มจากโครงสร้าง if ซึ่งมีลักษณะโครงสร้างเป็น

if(ประโยค)

{

กลุ่มคำสั่ง

}

โครงสร้าง if จะทำการตรวจสอบประโยคในวงเล็บว่าให้ค่า true หรือ false

ถ้าให้ค่า true จะทำคำสั่งต่างๆที่อยู่ในปีกกา

ถ้าให้ค่า false ก็จะข้ามคำสั่งที่อยู่ในปีกกาทั้งหมดไปเลย

เช่นดังตัวอย่างในรูป

Tip ถ้าหาว่าคำสั่งในเครื่องหมายปีกกามีเพียงคำสั่งเดียว เราไม่จำเป็นต้องใส่ปีกกาคร่อมคำสั่งก็ได้ เช่น

แทนที่เราจะเขียนแบบนี้

เราก็เขียนแบบนี้แทน

ซึ่งเราจะเห็นว่าการเขียนแบบหลังจะอ่านสบายตากว่าแบบแรก เพราะไม่มีเครื่องหมายปีกกาให้รำคาญลูกตา

ต่อไปนะครับ โครงสร้าง if……else

รูปแบบโคร้งสร้างจะเป็นดังนี้ครับ

if(ประโยค1)

{

กลุ่มคำสั่ง1

}

else

{

กลุ่มคำสั่ง2

}

การทำงานของมันจะเริ่มตรวจสอบค่าความจริงของประโยค1 ถ้าให้ค่า true จะทำกลุ่มคำสั่ง1

แต่ถ้าให้ค่าเป็น false จะทำกลุ่มคำสั่ง2

ดังตัวอย่างต่อไปนี้ครับ

ต่อไปเป็นโครงสร้าง if….else if

รูปแบบของโครงสร้างจะเป็นดังนี้ครับ

if(ประโยค1)

{

กลุ่มคำสั่ง1

}

else if(ประโยค2)

{

กลุ่มคำสั่ง2

}

.

.

.

การทำงานของมันก็จะเริ่มจากการตรวจสอบประโยค1 ว่าให้ค่า true หรือ false ถ้าให้ค่า true จะทำกลุ่มคำสั่ง1

ถ้าให้ค่า false ก็จะไปตรวจสอบประโยค2 ถ้าประโยค2 ให้ค่า true ก็จะทำกลุ่มคำสั่ง2

ถ้าให้ค่า false ก็จะไปตรวจสอบประโยค3 ทำแบบนี้ต่อเนื่องไปเรื่อยๆครับ

และถ้าทุกประโยคมีค่าความจริงเป็น false หมด มันก็จะไม่ทำกลุ่มคำสั่งใดๆเลย

เช่น

แต่ถ้าเราปิดท้ายด้วยกลุ่มคำสั่ง else เมื่อทุกประโยคมีค่าความจริงเป็น false หมด มันก็จะทำกลุ่มคำสั่งที่อยู่ใน else เช่น

ใน C++ จะมี operator ที่น่าสนตัวนึงที่ใช้โครงสร้างเดียวกับ if……else มันมีชื่อว่า conditional operator

รูปแบบคำสั่งจะเป็น

ประโยค? กระทำ1  : กระทำ2;

ถ้าประโยค ที่อยู่หน้ามีค่าความจริงเป็น true มันจะ return การกระทำ1

แต่ถ้าเป็น false มันจะ return การกระทำ2

ดังเช่นตัวอย่างต่อไปนี้

โครงสร้างสุดท้ายที่จะพูดถึงใน blog นี้คือ โครงสร้าง switch ซึ่งมีรูปแบบการทำงานเดียวกันกับโครงสร้าง if…..else if เลยครับ

รูปแบบของโครงสร้างจะเป็นดังนี้

switch(ตัวแปร)

{

case ตัวเลือก1 :

กระทำ1

break;

case ตัวเลือก2 :

กระทำ2

break;

.

.

.

}

การทำงานของคำสั่งนี้จะตรวจสอบว่าตัวแปรของเราตรงกับตัวเลือกใด ก็จะกระทำคำสั่งตรงตัวเลือกนั้น

คำสั่ง break ที่ปรากฏในนี้นั้นจะบอกโปรแกรมว่าคำสั่งในตัวเลือกนั้นๆ จะยุติลงแค่ตรงนี้นะ

เมื่อเจอคำสั่ง break มันจะทำการออกจากโครงสร้าง switch ทันที

และถ้ามันไม่เจอว่าตัวแปรของเราตรงกับตัวเลือกอะไร มันก็จะไม่ทำอะไรเลย

เช่น

โครงสร้าง switch จะมี คำสั่ง default ซึ่งเป็นคำสั่งที่การทำงานเหมือนกับ else กล่าวคือ ถ้าโครงสร้าง switch ตรวจสอบพบว่า ตัวแปรของเราไม่ตรงกับตัวเลือกใดๆเลย มันจะทำคำสั่งในตัวเลือก default แทน

ดังตัวอย่างต่อไปนี้

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: