คำสั่ง ใด เป็นคำสั่ง แรก ที่ใช้สำหรับ เขียนโปรแกรม

คำสั่งวนลูป

ความหมายของลูป(loop)
ลูป(loop)ในที่นี้มีความหมายว่า การวนซ้ำซึ่งการวนซ้ำในทางภาษาคอมพิวเตอร์ คือ การทำคำสั่งหรือชุดคำสั่งนั้นซ้ำกันหลายๆครั้ง
รูปแบบของลูป
ในการตรวจสอบว่าจะให้ลูปนั้นจบการทำงานเมื่อไรนั้น จะมีรูปแบบของการตรวจสอบเงือนไขอยู่ 2 แบบ

1.Pretest Loop ลูปประเภทนี้จะทำการตรวจสอบเงื่อนไขก่อนว่าเป็นจริง หรือเป็นเท็จถ้าเป็นจริงก็ให้เข้าไปทำคำสั่งหรือชุดคำส่งต่อไป และเมื่อทำคำสั่งหรือชุดคำสั่งเสร็จแล้วก็จะกลับมาทำการตรวจสอบเงื่อนไขอีกครั้ง และจะทำเช่นนี้ไปเรื่อยๆ จนกว่าเงื่อนไขจะเป็นเท็จ ก็จบการทำงานของลูป

2.post-Test loop ลูปประเภทนี้จะทำคำสั่งหรือชุดคำสั่งก่อน เมื่อเสร็จแล้วถึงจะมาตรวจสอบเงื่อนไขว่าเป็นจริงหรือเป็นเท็จ ถ้าเป็นจริงก็จะกลับไปทำคำสั่ง หรือ ชุดคำสั่งเดิมอีกครั้ง และจะทำจนกว่าเงื่อนไขจะเป็นเท็จเช่นเดียวกัน
การกำหนดและปรับปรุง ในการใช้ลูป จะมีการกระทำที่สำคัญอยู่ 2 อย่าง ที่จะขาดไม่ได้เลยซึ่งถ้าขาดไปจะทำให้ลูปนั้นไม่ทำงาน หรือลูปทำงานแบบไม่มีวันจบ
1.การกำหนดค่า ก่อนที่เริ่มใช้ลูปจะต้องมีการกำหนดค่าที่นะใช้เป็นตัวควบคุมลูปก่อนซึ่งตัวควบคุมนี้จะทำหน้าที่ในการตรวจอบว่าลูปนั้นได้ทำงานจนจบ
2.การปรับปรุง หลังจากที่ทำคำสั่งหรือชุดคำสั่งไปแล้วไม่มีการปับปรุงค่าของตัวควบคุมลูปก็จะทำให้ลูปนั้นกลายเป็นลูปไม่มีวันจบได ้เพราะฉะนั้นจะต้องทำการปรับปรุงค่าของตัวควบคุมลูปทุกครั้งเพื่อจะได้นำค่าของตัวควบคุมไปตรวจสอบกับเงื่อนไขเพื่อจบการทำงานของลูป

คำสั่ง ใด เป็นคำสั่ง แรก ที่ใช้สำหรับ เขียนโปรแกรม

คำสั่งวนลูปในภาษา C
คำสั่งลูปในภาษา C นั้นจะมีอยู่ 3 คำสั่ง คือ คำสั่ง While คำสั่ง for และคำสั่ง do…while ซึ่งสองคำสั่งแรกเป็นลูปแบบ Pretest loop ส่วนคำสั่งสุดท้ายจะเป็นแบบ Post-test loop

คำสั่ง ใด เป็นคำสั่ง แรก ที่ใช้สำหรับ เขียนโปรแกรม
 

While loop

คำสั่ง While จะใช้เงื่อนไขเป็นตัวควบคุมลูป ซึ่งลูป while นี้จะเป็นลูปแบบ pretest loop ซึ่งจะทำการตรวจสอบเงื่อนไขก่อนที่จะเข้าไปทำคำสั่งในลูป ผังการทำงานและชุดคำสั่งเบื้องต้นของ while ได้แสดงในรูป

คำสั่ง ใด เป็นคำสั่ง แรก ที่ใช้สำหรับ เขียนโปรแกรม
คำสั่ง ใด เป็นคำสั่ง แรก ที่ใช้สำหรับ เขียนโปรแกรม
คำสั่ง ใด เป็นคำสั่ง แรก ที่ใช้สำหรับ เขียนโปรแกรม

For loop

คำสั่ง For นั้นจะเป็นลูปแบบ pretest loop ที่ใช้นิพจน์ 3 นิพจน์ นิพจน์แรกเป็นการกำหนดค่า นิพจน์ที่ 2 เป็นเงื่อนไขในการตรวจสอบตัวควบคุมลูป และส่วนที่ 3 เป็นการปรับปรุงค่าของตัวควบคุมลูป
จะพบว่าในตัวของคำสั่ง for สามารถมีคำสั่งได้เพียงหนึ่งคำสั่งเท่านั้นจะต้องใช้ชุดคำสั่งแบบ compound statement และจะพบอีกว่าคำสั่ง for นั่นมีการทำงานเหมือน while แต่คำสั่ง for นั้นจะรวมการกระทำทั้งสามอย่างไว้ในบรรทัดเดียวกันเลย
การเปรียบเทียบการเขียนโปรแกรมโดยใช้คำสั่ง for และคำสั่ง while โดยโจทย์มีอยู่ว่าให้รับตัวเลขทางคีย์บอร์ด 20 ตัว แล้วนำตัวเลขทั้งหมาดมารวมกัน ซึ่งจากโปรแกรมข้างต้นด้านล่างจะเห็นได้ว่า คำสั่ง for จะช่วยให้ผู้ใช้เขียนโปรแกรมได้สั้นลง
 
โปรแกรมแสดงตัวเลขที่เรียงตัวเลขจากศูนย์ถึงตัวเลขที่รับเข้ามา
คำสั่ง ใด เป็นคำสั่ง แรก ที่ใช้สำหรับ เขียนโปรแกรม
คำสั่ง ใด เป็นคำสั่ง แรก ที่ใช้สำหรับ เขียนโปรแกรม
>> ถ้าต้องการให้พิมพ์เฉพาะเลขคี่ก็สามารถทำได้ โดยการเปลี่ยนที่คำสั่ง for เป็นดังนี้
คำสั่ง ใด เป็นคำสั่ง แรก ที่ใช้สำหรับ เขียนโปรแกรม
คำสั่ง ใด เป็นคำสั่ง แรก ที่ใช้สำหรับ เขียนโปรแกรม

ให้นักเรียนแก้ไขโค๊ตให้แสดงเฉพาะเลขคู่ ตามรูปด้านล่าง

คำสั่ง ใด เป็นคำสั่ง แรก ที่ใช้สำหรับ เขียนโปรแกรม

 
การใช้คำสั่ง for ซ้อนกัน ซึ่งการใช้คำสั่ง for ซ้อนกันจะช่วยให้ในการเขียนโปรแกรมบางอย่างได้ง่ายขึ้น
คำสั่ง ใด เป็นคำสั่ง แรก ที่ใช้สำหรับ เขียนโปรแกรม
คำสั่ง ใด เป็นคำสั่ง แรก ที่ใช้สำหรับ เขียนโปรแกรม

ตัวอย่างโปรแกรมสูตรคูณ

คำสั่ง ใด เป็นคำสั่ง แรก ที่ใช้สำหรับ เขียนโปรแกรม

ผลลัพธ์

คำสั่ง ใด เป็นคำสั่ง แรก ที่ใช้สำหรับ เขียนโปรแกรม

Do…while loop

คำสั่ง do…while เป็นลูปแบบ Post-Test Loop ดังที่ได้กล่าวไปแล้วในข้างต้น ว่าลูปแบบนี้จะมีคำสั่งก่อนทีจะไปทำการตรวจสอบตัวควบคุมลูป

ซึ่งผังการทำงานและชุดคำสั่งเบื้องต้นได้แสดงในรูปที่ 7-10

ซึ่งในตัวของคำสั่ง do….while นั้นจะมีคำสั่งได้เพียงคำสั่งเดียว ซึ่งถ้าต้องการเขียนเป็นชุดคำสั่งจะต้องเขียนชุดคำสั่งแบบ Compound Statement

จากรูปจะเห็นได้วาคำสั่ง do…while นั้นจะมีการทำคำสั่งในลูปอย่างน้อยหนึ่งครั้ง ถึงแม้จะตรวจสอบตัวควบคุมลูปแล้วเป็นเท็จก็ตาม

คำสั่ง do…while นี้จะเหมาะสำหรับงานที่ต้องมีการทำคำสั่งอย่างน้อยหนึ่งครั้ง

 
โปรแกรมบวกตัวเลข โดยใช้คำสั่ง do…while
คำสั่ง ใด เป็นคำสั่ง แรก ที่ใช้สำหรับ เขียนโปรแกรม
คำสั่ง ใด เป็นคำสั่ง แรก ที่ใช้สำหรับ เขียนโปรแกรม
 

คำสั่งอื่นๆที่ใช้ในลูป

ในการวนลูปนั้น บางครั้งการทำงานของลูปอาจจะทำให้ตัวควบคุมนยั้น มี่มีค่าที่นำตรวจสอบเพื่อจบการทำงานได้

หรือเมื่อพบกรณีใดกรณีหนึ่งขึ้นมา ผู้ใช้ไม่ต้องการให้ทำคำสั่งต่อไปแลกะต้องการให้ข้ามคำสั่งนั้นไปเลย

เพราะฉะนั้นภาษา C จึงมีคำสั่งที่ช่วยการทำงานในลักษณะนี้ขึ้น

Break
สามารถนำมาใช้ในคำสั่งวนลูปได้เหมือนกัน เพื่อให้กระโดดออกจากลูปในกรณีต่างได้
 
Continue
คำสั่งนี้จะไม่ได้กระโดดออกจากลูปเลย แต่จะกระโดดคำสั่งอื่นๆในลูปไปทำการตรวจสอบตามนิพจน์เลย
แสดงการใช้งานคำสั่ง Continue