คำสั่ง Do.....While
คำสั่งนี้มีลักษณะการทำงานคล้ายกับคำสั่ง While แต่มีส่วนแตกต่างอยู่เล็ก ๆ น้อย ๆ ที่มี Do เพิ่มเข้ามานี่ดิ แล้วไอ้ Do นี่จะทำให้แตกต่างจาก While เดี่ยว ๆ
คำสั่ง do while เป็นคำสั่งที่กำหนดให้มีการทำงานวนรอบ คล้าย ๆ คำสั่ง While แต่แตกต่างกันที่คำสั่ง do while จะให้ทำคำสั่งในลูป do ก่อน แล้วค่อยพิจารณาเงื่อนไขใน while ถ้าค่าเงื่อนไขใน while เป็นจริง จึงจะวนรอบทำคำสั่งในลูป doต่อไป
รูปแบบการใช้คำสั่ง do while
do {คำสั่ง} while (เงื่อนไข)
ตัวอย่างการโปรแกรม
คำสั่ง do while เป็นคำสั่งที่กำหนดให้มีการทำงานวนรอบ คล้าย ๆ คำสั่ง While แต่แตกต่างกันที่คำสั่ง do while จะให้ทำคำสั่งในลูป do ก่อน แล้วค่อยพิจารณาเงื่อนไขใน while ถ้าค่าเงื่อนไขใน while เป็นจริง จึงจะวนรอบทำคำสั่งในลูป doต่อไป
รูปแบบการใช้คำสั่ง do while
do {คำสั่ง} while (เงื่อนไข)
ตัวอย่างการโปรแกรม
ผลลัพธ์ของโปรแกรม
จากตัวอย่างการโปรแกรม เราได้ทำการเขียนโปรแกรม โดยสร้างตัวแปร $i แล้วให้มีค่าเท่ากับ 5 หลังจากนั้น ตรงนี้ละที่จะทำงานต่างจาก while เราะจะเจอกับคำสั่ง do เมื่อเจอคำสั่ง doโปรแกรมจะทำเลยทันที (do แปลว่าทำนี่น่า) ซึ่งก็คือแสดงผลค่าตัวแปร i คือ แสดงเลข 5 ออกมา และขึ้นบรรทัดใหม่ แล้วเมื่อเจอคำสั่ง $i-- จำกันได้ไหมเพิ่งผ่านไปในบทความที่แล้ว
มีความหมายว่าลบค่า $i ไป 1 ดังนั้นตอนนี้ $i=4 แล้ว
จากนั้นโปรแกรมจะเจอคำสั่ง while ซึ่งจะทำการเช็คค่าในตัวแปร i คือ หากตัวแปร i มีค่ามากกว่าหรือเท่ากับ 1 โปรแกรมจะวนลูปทำคำสั่งในลูป do อีกครั้ง การทำงานก็เหมือนคำสั่งwhile ก็คือเช็คจนเงื่อนไขเป็นเท็จจึงจะหลุดลูปและจบการทำงาน
คำถามคือ แล้วเมื่อไหร่ละจะหลุดลูป คำตอบก็คือเมื่อมันลดค่า$i ลงรอบละ 1 เรื่อย ๆ จนเมื่อ
$i=0 ก็จะหลุดลูปและจบการทำงาน
ในการทำงานจริง ๆ การเขียนโดยใช้เงือนไขจำพวก while เราจะเอาไปใช้ประโยชน์ในการทำซ้ำ ๆ เช่น การดึงขอมูลจากดาต้าเบสมาแสดง การวนรอบแสดงคำสั่งเซลล์ต่าง ๆ ของตารางเป็นต้น ซึ่งเราจะให้อะไรแสดงผลออกทางหน้าจอ เราก็เอาสิ่งเหล่านั้น มาใส่ไว้ในลูปที่ต้องการให้ทำงาน แล้วจะแสดงเท่าไหร่ ก็ขึ้นอยู่กับเงื่อนไข
มีความหมายว่าลบค่า $i ไป 1 ดังนั้นตอนนี้ $i=4 แล้ว
จากนั้นโปรแกรมจะเจอคำสั่ง while ซึ่งจะทำการเช็คค่าในตัวแปร i คือ หากตัวแปร i มีค่ามากกว่าหรือเท่ากับ 1 โปรแกรมจะวนลูปทำคำสั่งในลูป do อีกครั้ง การทำงานก็เหมือนคำสั่งwhile ก็คือเช็คจนเงื่อนไขเป็นเท็จจึงจะหลุดลูปและจบการทำงาน
คำถามคือ แล้วเมื่อไหร่ละจะหลุดลูป คำตอบก็คือเมื่อมันลดค่า$i ลงรอบละ 1 เรื่อย ๆ จนเมื่อ
$i=0 ก็จะหลุดลูปและจบการทำงาน
ในการทำงานจริง ๆ การเขียนโดยใช้เงือนไขจำพวก while เราจะเอาไปใช้ประโยชน์ในการทำซ้ำ ๆ เช่น การดึงขอมูลจากดาต้าเบสมาแสดง การวนรอบแสดงคำสั่งเซลล์ต่าง ๆ ของตารางเป็นต้น ซึ่งเราจะให้อะไรแสดงผลออกทางหน้าจอ เราก็เอาสิ่งเหล่านั้น มาใส่ไว้ในลูปที่ต้องการให้ทำงาน แล้วจะแสดงเท่าไหร่ ก็ขึ้นอยู่กับเงื่อนไข