การเขียนโปรแกรมนั้นเต็มไปด้วยการทำซ้ำบางสิ่งหลายครั้งตามเงื่อนไขที่กำหนด หนึ่งในสิ่งที่ช่วยให้การทำซ้ำเกิดขึ้นได้อย่างง่ายดายคือการใช้งาน "while loop" หรือ "ลูป while" ซึ่งเป็นโครงสร้างควบคุมที่พบได้ในหลายภาษาโปรแกรมมิ่ง ลูป while จะทำการวนซ้ำเนื้อหาภายในตัวมันเองจนกว่าเงื่อนไขที่กำหนดจะเป็นเท็จ
สำหรับภาษาโปรแกรม Golang หรือ Go นั้นไม่มีโครงสร้าง while loop ตามชื่อโดยตรง แต่เราสามารถใช้ "for statement" ในการจำลองการทำงานของลูป while ได้
เมื่อเขียนลูป while เสมือนใน Golang คุณจะใช้ "for" โดยไม่ระบุ initialization statement และ post statement แต่มีเพียง condition statement เท่านั้นเพื่อทำงานวนซ้ำ ดังตัวอย่างเบื้องต้นต่อไปนี้:
package main
import "fmt"
func main() {
count := 1
// while loop ใน Golang
for count <= 5 {
fmt.Println("Count:", count)
count++ // เพิ่มค่า count ทีละ 1
}
}
ในตัวอย่างข้างต้น `for count <= 5` คือการจำลองลูป while ที่จะทำงานวนซ้ำจนกว่า count จะมีค่ามากกว่า 5
1. การอ่านข้อมูลจากไฟล์
ในโลกจริง ลูป while สามารถใช้สำหรับการอ่านข้อมูลจากไฟล์ทีละบรรทัด และดำเนินการต่อจนกว่าจะถึงสิ้นสุดของไฟล์:
package main
import (
"bufio"
"fmt"
"os"
)
func main() {
file, err := os.Open("example.txt")
if err != nil {
log.Fatal(err)
}
defer file.Close()
scanner := bufio.NewScanner(file)
for scanner.Scan() {
fmt.Println(scanner.Text())
}
if err := scanner.Err(); err != nil {
log.Fatal(err)
}
}
ในโค้ดนี้ `scanner.Scan()` จะเป็นเท็จเมื่อถึงสิ้นสุดไฟล์ ทำให้การวนซ้ำหยุดลง
2. ระบบ Login
ลูป while สามารถใช้เพื่อสร้างระบบ login ที่จะวนซ้ำจนกว่าผู้ใช้จะใส่ข้อมูลที่ถูกต้อง:
package main
import (
"bufio"
"fmt"
"os"
)
func main() {
scanner := bufio.NewScanner(os.Stdin)
correctPassword := "go123"
var input string
for input != correctPassword {
fmt.Print("Enter password: ")
scanner.Scan()
input = scanner.Text()
if input != correctPassword {
fmt.Println("Incorrect password, try again.")
}
}
fmt.Println("Access granted.")
}
การใช้ `input != correctPassword` เป็นเงื่อนไขการวนซ้ำจะทำให้ลูปดำเนินการต่อไปจนกว่าผู้ใช้จะป้อนรหัสผ่านที่ถูกต้อง
ในการเขียนบทความนี้ หากคุณพบว่าการทำงานซ้ำๆ ภายใต้เงื่อนไขที่กำหนดคือสิ่งที่คุณต้องการ การเรียนรู้การใช้งานลูป while หรือการวนซ้ำด้วย for loop ใน Golang จะตอบโจทย์คุณได้อย่างยอดเยี่ยม ที่ EPT เราพร้อมให้คำแนะนำและสอนวิธีการใช้คำสั่งเหล่านี้ในสถานการณ์จริง พร้อมด้วยตัวอย่างที่รอบคอบและคำอธิบายที่ชัดเจน ทำให้คุณสามารถนำไปปรับใช้ในโครงการหรืองานของคุณได้อย่างมั่นใจและมีประสิทธิภาพ
หมายเหตุ: ข้อมูลในบทความนี้อาจจะผิด โปรดตรวจสอบความถูกต้องของบทความอีกครั้งหนึ่ง บทความนี้ไม่สามารถนำไปใช้อ้างอิงใด ๆ ได้ ทาง EPT ไม่ขอยืนยันความถูกต้อง และไม่ขอรับผิดชอบต่อความเสียหายใดที่เกิดจากบทความชุดนี้ทั้งทางทรัพย์สิน ร่างกาย หรือจิตใจของผู้อ่านและผู้เกี่ยวข้อง
Tag ที่น่าสนใจ: while_loop golang for_statement programming control_structures looping repetitive_tasks file_reading login_system condition_statements
หากมีข้อผิดพลาด/ต้องการพูดคุยเพิ่มเติมเกี่ยวกับบทความนี้ กรุณาแจ้งที่ http://m.me/Expert.Programming.Tutor
085-350-7540 (DTAC)
084-88-00-255 (AIS)
026-111-618
หรือทาง EMAIL: NTPRINTF@GMAIL.COM
Copyright (c) 2013 expert-programming-tutor.com. All rights reserved. | 085-350-7540 | 084-88-00-255 | ntprintf@gmail.com