2. = C programming By…iamch❀mmy =
บทที่ 12 Loop while
โดยปกติที่ผ่านมานั้น เราเคยเขียนโปรแกรม และแต่ละคาสั่งทางานเพียงครั้งเดียวเท่านั้นใน
บทนี้ จะกล่าวถึงการเขียนคาสั่ง เพื่อให้ทางานคาสั่งอื่นหลาย ๆ รอบ ตามแต่ผู้เขียนโปรแกรมจะ
กาหนด
ลูพ (loop) มีความหมายว่า การวนซ้า ซึ่งการวนซ้าในทางภาษาคอมพิวเตอร์ คือการทา
คาสั่งหรือชุดคาสั่งนั้นซ้ากันหลาย ๆ ครั้ง
การเขีย นโปรแกรมเพื่อให้มี การท้างานซ้า ๆ ที่มีจ้านวนรอบในการท้าซ้าที่ไ ม่แน่นอน
มักจะใช้คาสั่ง while นิยมใช้ในการคานวณค่าผลลัพธ์จากการสร้างสมการต่าง ๆ ที่ต้องการวนซ้า
จนกระทั่งครบตามจานวนที่เงื่อนไขกาหนด ในบทนี้จะกล่าวถึงคาสั่ง while และ do while
การทางานของคาสั่ง while นั้นจะมีการตรวจสอบเงื่อนไขก่อนว่าเป็นจริงหรือไม่หากเงื่อนไข
เป็นจริง จะมีการทางานชุดคาสั่ งที่ต้องทาซ้า (ชุดคาสั่ง : statement) ในเครื่องหมายวงเล็บปีกกา)
ซึ่งเรียกว่าการเข้า loop หลังจากนั้นก็จะย้อนกลับไปตรวจสอบเงื่อนไขใหม่อีกถ้าเงื่อนไขยังคงเป็นจริง
อยู่ ก็ยังคงต้องทาชุดคาสั่งซ้าหรือเข้า loop ต่อไปอีกจนกระทั่งเงื่อนไขเป็นเท็จ ก็จะออกจาก loop
ไปทาคาสั่งถัดไปที่อยู่ถัดจาก while หรืออาจเป็นการจบการทางานก็ได้
while มีรูปแบบการเขียน ดังนี้
while(condition)
{
statement1;
statement2;
..............
ผังงาน
เงื่อนไข
ไม่จริง
จริง
ประมวลผล
statement
}
บทที่ 12 Loop while
หน้า 2
3. = C programming By…iamch❀mmy =
do while มีรูปแบบการเขียน ดังนี้
รูปแบบการเขียนคาสั่ง do while เป็นดังนี้
ผังงาน
do
{
statement1;
statement2;
.....
}
ประมวลผล
statement
เงื่อนไข
while (condition);
จริง
ไม่จริง
นั่นคือ การทางานของ do while จะเหมือนกับ while ต่างกันเพียงแค่ do while จะทางาน
ทุกคาสั่งในวงเล็บปีกกาก่อนจะเช็คเงื่อนไขไม่ว่าเงื่อนไขจะจริงหรือไม่ คาสั่งทุกคาสั่งจะถูกทางานไป
แล้ว 1 ครั้ง แต่กรณี while หาก condition ไม่จริง จะไม่มีการทางานคาสั่งภายในวงเล็บปีกกา
เลย
ค้าสั่ง while นีท้างานไม่ซับซ้อน สามารถเข้าใจได้ไม่ยาก
แต่ผู้เขียนโปรแกรมควรจะใช้เรื่องพวกนีจนคล่องแคล่ว เนื่องจากเรื่องนี
มีความส้าคัญมาก เพราะสามารถน้าไปประยุกต์ได้อย่างมากมาย
บทที่ 12 Loop while
หน้า 3
4. = C programming By…iamch❀mmy =
ตัวอย่าง การท้างานของ while
โปรแกรมเพื่อพิมพ์เลข 1 - 10 ออกมาทางหน้าจอ โดยให้ขึ้นบรรทัดใหม่ทุกครั้งด้วย
การเขียน while จะต้องกาหนดค่าให้กับตัวแปรเริ่มต้นก่อนเสมอ
และจะต้องเพิ่มหรือลดค่าให้กับตัวแปรนั้นทุก ๆ รอบที่มีการทางาน
บทที่ 12 Loop while
หน้า 4