รูปเเบบการสั่งงาน While loop เเละ Do loop

While loop

Do loop

คำสัง Do While loop เป็นคำสั่งวนซ้ำเช่นเดียวกันกับคำสั่ง While loop แต่ในการตรวจสอบเงือนไขนั้น จะทำการตรวจสอบหลังจากที่โปรแกรมได้ทำงานใน loop ไปแล้วอย่างน้อย 1 ครั้ง นี่เป็นรูปแบบการใช้งานคำสั่ง Do While loop ในภาษา Visual Basic

การใช้งานจะใช้คำสั่ง While ตามด้วย Expression ซึ่งเป็นการกำหนดเงือนไขให้ While loop ทำงาน โปรแกรมจะทำงานใน loop ตราบใดที่เงือนไขยังคงเป็น True จนกว่ามันจะเป็น False โปรแกรมจะออกจาก loop และทำงานในคำสั่งต่อไป

click to edit

Module WhileLoop

Sub Main()

Dim i As Integer = 1

While i <= 10

Console.WriteLine("Count {0}", i)

i = i + 1

End While

End Sub

End Module

Dim i As Integer = 1

นี่เป็นคำสั่งในการกำหนดค่าเริ่มต้นสำหรับการนับ โปรแกรมของเราจะนับเริ่มจาก 1 และเราประกาศตัวแปร i สำหรับมาเก็บค่านี้

นี่เป็นตัวอย่างพื้นฐานที่สุดในการใช้งานคำสั่ง loop เราได้เขียนโปรแกรมเพื่อให้นับเลขตั้งแต่ 1 ถึง 10

click to edit

While i <= 10

Console.WriteLine("Count {0}", i)

i = i + 1

End While

นี่เป็นผลลัพธ์ของโปรแกรมในการใช้ While loop นับตัวเลข


คำเตือน: ในการทำงานกับคำสั่ง loop คุณต้องแน่ใจกว่าเงือนไขใน loop นั้นสามารถเป็น False ได้ ไม่เช่นนั้นโปรแกรมจะทำงานใน loop ตลอดไปซึ่งเราเรียกว่า infinity loop ในตัวอย่างเราได้เพิ่มค่า i ขึ้นทุกครั้งเพื่อให้โปรแกรมออกจาก loop ในตอนที่มันแสดงครบ 10 ตัวเลขแล้ว

Count 1

Count 2

Count 3

Count 4

Count 5

Count 6

Count 7

Count 8

Count 9

Count 10

click to edit

นี่เป็นตัวอย่างโปรแกรมในการรับชื่อ และแสดงข้อความทักทาย เราได้ประกาศตัวแปร name เพื่อเก็บชื่อ

Module DoWhileLoop

Sub Main()

Dim name As String

Do

Console.Write("Enter name: ")

name = Console.ReadLine()

Console.WriteLine("Hello {0}", name)

Loop While name <> ""

Console.WriteLine("Goodbye all")

End Sub

End Module

ภายใน loop โปรแกรมจะถามให้ใส่ชื่อ และจะแสดงข้อความทักทายชื่อที่ใส่เข้ามา และโปรแกรมจะทำงานในขณะที่ชื่อที่ใส่เข้ามานั้นไม่เป็น "Mark" ซึ่งเราตรวจสอบโดยเงือนไข name <> "Mark" นั่นคือถ้าชื่อที่ใส่มาเป็น Mark โปรแกรมจะจบการทำงานใน loop ทันที

Do

Console.Write("Enter name: ")

name = Console.ReadLine()

Console.WriteLine("Hello {0}", name)

Loop While name <> "Mark"

นี่เป็นตัวอย่างผลลัพธ์ของโปรแกรมการใช้คำสั่ง Do While loop เราได้กรอกชื่อ Mateo Danny Callie และสุดท้ายเราได้กรอกชื่อ Mark ตามลำดับ ทำให้โปรแกรมจะสิ้นสิ้นสุดการทำงานเพราะว่าเงือนไขไม่เป็นจริงอีกต่อไป

Enter name: Mateo

Hello Mateo

Enter name: Danny

Hello Danny

Enter name: Callie

Hello Callie

Enter name: Mark

Hello Mark

Goodbye all