เงื่อนไขและคำสั่งวนซ้ำ


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

เครื่องหมายที่ใช้ในการเปรียบเทียบ

เครื่องหมาย ความหมาย ตัวอย่าง
> มากกว่า 5 > 4 เงื่อนไขเป็น จริง
>= มากกว่าหรือเท่ากับ 5 >= 4 เงื่อนไขเป็น เท็จ
< น้อยกว่า 5 < 4 เงื่อนไขเป็น เท็จ
<= น้อยกว่าหรือเท่ากับ 5 <= 4 เงื่อนไขเป็น เท็จ
== เท่ากับ 5 == 4 เงื่อนไขเป็น เท็จ
!= ไม่เท่ากับ 5 != 4 เงื่อนไขเป็น จริง

ในการเปรียบเทียบตัวเลขจะใช้เลขฐานสิบเป็นหลัก กล่าวคือ 1<2<3<4<5<6<7<8<9<10<… สำหรับตัวเลขติดลบที่น้อยกว่าจะมีค่าน้อยกว่าจะมีค่ามากกว่าเลขติดลบที่มากกว่า เช่น
10 > 8 ค่าคงที่บูลีน 1 ( จริง )
-9 < -3 ค่งคงที่บูลีน 1 ( จริง )
13 != 3 ค่าคงที่บูลีน 1 ( จริง )
2 < -5 ค่าคงที่บูลีน 0 ( เท็จ )


1. กลุ่มคำสั่ง Branching
เป็นกลุ่มคำสั่งให้ข้ามการทำงานจากคำสั่งหนึ่งไปยังคำสั่งอื่น แบ่งเป็น 2 กลุ่ม ย่อย กลุ่มแรกข้ามไปแล้วไม่กลับมายังคำสั่งถัดไปจากคำสั่งเดิม ส่วนกลุ่มที่2 เมื่อกระโดด ไปทำงานในคำสั่งที่กำหนดแล้วจะกลับมาทำงานตามคำสั่งที่อยู่ถัดจากคำสั่งที่ให้สั่งให้กระโดดข้ามไป คำสั่ง Branching คือ Goto คำสั่งกลุ่มนี้ ปัจจุบันไม่นิยมใช้เพราะทำให้โปรแกรมไม่เป็นลักษณะโปรแกรมโครงสร้าง (Structure Programming)

1.1 goto
คำสั่ง goto หรือ คำสั่งให้กระโดดการทำงานไปยังตำแหน่งที่ระบุ Label ที่ต่อท้ายด้วยเครื่องหมาย : โคลอน แต่ในการเขียนโปรแกรมนั้น ไม่นิยมใช้คำสั่ง goto label เพราะจะกำหนดจุดจบของโปรแกรมค่อนข้างยาก
คำสั่งให้โปรแกรมกระโดดไปยังตำแหน่งที่ต้องการ

ตัวอย่างโปรแกรม ผังงาน
int main(){

int a=10;
loop:
printf("%d\n",a);
a--;
if (a>0) goto loop;
printf("FIRE!\n");
return 0;
}


ภาพที่ 1.1 goto

สร้างโดย: 
ชัยฤทธิ์ ตอนปัญญา

มหาวิทยาลัยศรีปทุม ผู้ใหญ่ใจดี
 

 ช่วยด้วยครับ
นักเรียนที่สร้างบล็อก กรุณาอย่า
คัดลอกข้อมูลจากเว็บอื่นทั้งหมด
ควรนำมาจากหลายๆ เว็บ แล้ววิเคราะห์ สังเคราะห์ และเขียนขึ้นใหม่
หากคัดลอกทั้งหมด จะถูกดำเนินคดี
ตามกฎหมายจากเจ้าของลิขสิทธิ์
มีโทษทั้งจำคุกและปรับในอัตราสูง

ช่วยกันนะครับ 
ไทยกู๊ดวิวจะได้อยู่นานๆ 
ไม่ถูกปิดเสียก่อน

ขอขอบคุณในความร่วมมือครับ

อ่านรายละเอียด

ด่วน...... ขณะนี้
พระราชบัญญัติลิขสิทธิ์ (ฉบับที่ 2) พ.ศ. 2558 
มีผลบังคับใช้แล้ว 
ขอให้นักเรียนและคุณครูที่ใช้งาน
เว็บ thaigoodview ในการส่งการบ้าน
ระมัดระวังการละเมิดลิขสิทธิ์ด้วย
อ่านรายละเอียดที่นี่ครับ

 

สมาชิกที่ออนไลน์

ขณะนี้มี สมาชิก 0 คน และ ผู้เยี่ยมชม 31 คน กำลังออนไลน์