Visual Basic การใช้ for loop

vb 2008 สอน, vb for loop, for loop, vb ลูป

หลังจากเคลียร์งานบางส่วนเสร็จ ก็พอมีเวลามาเขียนบทความซึ่งผมก็ดูแล้วว่า ผมไม่ได้เขียนบทความในหมวดหมู่ visual basic เลยพอไปดูเนื้อหาล่าสุดก็คือการใช้ select case ก็เรื่องตัดสินใจเขียนเรื่องการใช้ for loop ซึ่งใน visual basic นั้นจะมี for loop ไม่คล้ายกับภาษาในตระกูลภาษาซี เลยซึ่งมีรูปแบบการใช้งานที่อาจเรียกได้ว่าใช้งานง่ายก็ได้ ซึ่งเราก็มาดูกันเลยนะครับว่ามันเขียนยังไง เริ่มแรกก็สร้าง Project ใหม่ แล้วเลือกเป็น Windows Forms Application

vb 2008 สอน, vb for loop, loop for

ตั้งชื่อว่า VB-ForLoop

vb 2008 สอน, vb for loop, loop for

จากนั้นก็สร้าง Form ดังรูปโดยมี button 1 อัน textbox 2 อันโดยอันแรกกำหนด name ให้เป็น txtForLoop ส่วน text box อีกอันให้เลือกเป็น multiline แล้ว name เป็น txtResult สุดท้ายก็ button ให้เซ็ต name เป็น? cmdForLoop ส่วน text เป็น For Loop เมื่อสร้างเสร็จแล้วก็เขียนโค้ดโดย double click ที่ For Loop เพื่อเขียนโค้ดในส่วนของ For Loop โดยโค้ดมีดังนี้

[sourcecode language=”vb”]

Private Sub cmdForLoop_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdForLoop.Click

Dim num As Integer

Dim i As Integer

Dim strResult As String

strResult = “”

num = txtForLoop.Text

For i = 0 To num

strResult = strResult & “Loop ” & i & ” = ” & i * 2 & Environment.NewLine

Next

txtResult.Text = strResult

End Sub

[/sourcecode]

เมื่อเสร็จแล้วลองรันโดยกด F5 จากได้ดังรูป

vb 2008 สอน, vb for loop, loop for

จากโค้ดตัวอย่างจะเห็นว่ารูปแบบของ For Loop ใน vb นั้นจะเริ่มต้นโดยกำหนดค่าตัวแปร ต่อจากนั้นก็จะมีการบอกว่า To เท่าไรนั้นคือเป็นการบอกว่าทำซ้ำจนถึงกี่รอบ For Loop ใน Vb นั้นจะปิดด้วยคำว่า Next ดังรูปแบบของด้านล่างนี้ครับ

[sourcecode language=”vb”]

For i = 0 To num

?

Next

[/sourcecode]

ส่วนการทำงานของโปรแกรมก็จะรับค่าจำนวนรอบจาก textbox กำหนดให้ตัวแปร num จากนั้นก็ทำซ้ำตั้ง

i = 0 จนถึง i = num โดยในแต่ละรอบก็จะเก็บผลลัพธ์ทั้งข้อความและค่า I * 2 เก็บไว้ในตัวแปร strResult เมื่อทำจนครบลูปแล้วก็นำค่าตัวแปร strResult ?set ค่า property text ให้ txtResult ก็จะได้ผลลัพธ์เวลารันดังภาพ

Download SourceCode

Leave a Reply

Your email address will not be published. Required fields are marked *