ใบความรู้ 4 เรื่อง คำสั่งทำงานเป็นวนรอบหรือวนซ้ำ (Loop)

การเขียนโปรแกรมแบบวนรอบ ในที่นี้เราจะเรียกว่า loop ความหมายก็คือ การวนซ้ำหรือทำซ้ำไปเรื่อยๆ จนกว่าเงื่อนไขจะไม่เป็นจริง และประโยชน์ของการ loop ก็คือ ทำให้ผู้เขียนโปรแกรมเขียนโปรแกรมได้ง่าย กระชับ และยืดหยุ่นมากขึ้น โปรแกรมจะทำซ้ำไปเรื่อยๆจนกว่าเงื่อนไขจะไม่เป็นจริง นั่นหมายความว่าผู้เขียนโปรแกรมไม่ต้องเขียนคำสั่งเองหลายๆบรรทัด ตัวอย่างเช่น หากเราต้องการแสดงผลข้อความว่า “สวัสดี” ทั้งหมด 100 คำ นั่นหมายความว่าเราจะต้องเขียนคำสั่งแสดงผลทั้งหมด 100 คำสั่ง ซึ่งไม่คุ้มเสียเวลาเลย แต่ถ้าหากว่าเราเขียนวน loop เราอาจเขียนคำสั่งเพียงแค่ 3-4 บรรทัด เราก็จะได้ผลลัพธ์แสดงข้อความ “สวัสดี” ทั้งหมด 100 คำ โดยที่ผู้เขียนไม่เสียเวลามากจนเกินไป และยังมีความยืดหยุ่นมากกว่าด้วย

การใช้คำสั่ง FOR

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

 for (ค่าเริ่มต้น ; เงื่อนไขเช็คค่าปลาย ; ค่าเพิ่ม)
 คำสั่งที่ต้องการดำเนินการ ;

โดยมีข้อกำหนดดังนี้

ค่าเริ่มต้น (Initial expression) : เป็นการกำหนดค่าเริ่มต้นให้กับตัวแปร

เงื่อนไขเช็คค่าปลาย (Condition) : เป็นการเช็คเงื่อนไขเปรียบเทียบ กับค่าปลายของตัวแปร หากนิพจน์การเปรียบเทียบมีค่าเป็นจริง โปรแกรมจะดำเนินงานทำตามคำสั่งที่กำหนดจนจบ แล้ววนกลับมาเช็ค เงื่อนไขเดิมอีก ทำเช่นนี้จนกว่านิพจน์การเปรียบเทียบนั้น จะให้ค่าเป็นเท็จจึงออกจากโครงสร้างของคำสั่ง FOR

ค่าเพิ่ม (Update expression) : เป็นการเพิ่มค่าหรือปรับปรุงค่าให้กับข้อมูลของ ตัวแปร สำหรับการวนรอบทำงานแต่ละครั้ง

สำหรับในกรณีที่ประโยคคำสั่งของการวนรอบทำงานมีมากกว่า 1 ประโยคคำสั่งให้เขียนกลุ่มประโยคคำสั่งเหล่านั้นอยู่ในบล็อกคำสั่ง โดยเขียนภายใต้ เครื่องหมายวงเล็บปีกกา ดังนี้

{กลุ่มของประโยคคำสั่ง}
ตัวอย่าง ต้องการจะพิมพ์อนุกรมของตัวเลข 1 2 3 4 5 6 7 8 9 10 จะเขียนรูป แบบคำสั่งของ FOR ได้ดังนี้

 for (a=1 ; a<=10; a++)document.write(a+ ” “) ;

โดยกำหนดให้ตัวแปร a ทำหน้าที่วนรอบการทำงานพิมพ์ค่าของ a ตั้งแต่ 1 ถึง 10

การใช้คำสั่ง WHILE

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

 While (เงื่อนไขการเปรียบเทียบข้อมูล)คำสั่ง;

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

{กลุ่มของประโยคคำสั่ง}

ตัวอย่าง ต้องการจะพิมพ์อนุกรมของตัวเลข 1 2 3 4 5 6 7 8 9 10 จะ เขียนรูปแบบคำสั่งของ WHILE ได้ดังนี้

 a=1
 while (a<=10)
 { document .write(a+” “);a++ ; }

โดยกำหนดให้ตัวแปร a ทำหน้าที่วนรอบการทำงานพิมพ์ค่าของ a ตั้งแต่ 1 ถึง 10

คำสั่ง BREAK

ใช้สำหรับขัดจังหวะของการวนรอบทำงานของคำสั่ง FOR และ WHILE เพื่อให้ออก จากโครงสร้างการทำงานภายในวนรอบการทำงานนั้น ๆ ตามความต้องการทันที

คำสั่ง CONTINUE

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

 

ใบงานที่ 4 เรื่อง คำสั่งทำงานเป็นวนรอบหรือวนซ้ำ (Loop)

          คำชี้แจง  ให้นักเรียนตอบคำถามดังต่อไปนี้ลงในสมุดของนักเรียน

1. บอกความหมายของคำสั่งทำงานเป็นวนรอบหรือวนซ้ำ(Loop)  มาอย่างละเอียด

2. บอกประโยชน์ของคำสั่งทำงานเป็นวนรอบหรือวนซ้ำ(Loop) มาอย่างละเอียด

3. บอกความหมายของการใช้คำสั่ง FOR และรูปแบบของการใช้

4. บอกความหมายของการใช้คำสั่ง WHILE  และรูปแบบของการใช้
5. บอกความหมายของการใช้คำสั่ง BREAK
6. บอกความหมายของการใช้คำสั่ง CONTINUE

ใส่ความเห็น