สารบัญ:
- ในขณะที่วนรอบใน C ++ คืออะไร
- ไวยากรณ์ของ while Loop
- วิธีใช้ขณะวนซ้ำใน C ++
- C ++ ซ้อนกันในขณะที่วนซ้ำ
- C ++ ไม่มีที่สิ้นสุดในขณะที่วนซ้ำ
- การพิมพ์เลขคู่และเลขคี่ด้วย while Loops ใน C++
- บทสรุป
ในขณะที่วนรอบใน C ++ คืออะไร
ลูป while เป็นโครงสร้างควบคุมที่จะทำงานต่อไปตราบเท่าที่เงื่อนไขประเมินเป็นจริง และจะหยุดเมื่อเงื่อนไขกลายเป็นเท็จ มีประโยชน์ในกรณีที่คุณต้องการทำงานบางอย่างซ้ำจนกว่าจะตรงตามเงื่อนไขที่กำหนด
ตัวอย่างเช่น คุณสามารถใช้ลูป while เพื่อพิมพ์ตัวเลขตั้งแต่ 1 ถึง 10 หรือคำนวณแฟกทอเรียลของตัวเลขที่กำหนด
ไวยากรณ์ของ while Loop
ไวยากรณ์พื้นฐานของการวนรอบ while ใน C++ มีดังต่อไปนี้:
ในขณะที่ ( เงื่อนไข ) {
// รหัสที่จะดำเนินการ
}
โค้ดภายในวงเล็บปีกกาจะถูกดำเนินการซ้ำๆ ตราบใดที่เงื่อนไขเป็นจริง เงื่อนไขจะถูกตรวจสอบทุกครั้งที่วนซ้ำ
วิธีใช้ขณะวนซ้ำใน C ++
หนึ่งในตัวอย่างที่พบบ่อยที่สุดของการวนลูปแบบ while คือนับจากจุดเริ่มต้นไปยังจุดสิ้นสุด ตัวอย่างเช่น, รหัสต่อไปนี้จะนับจาก 1 ถึง 10:
#รวมถึงใช้เนมสเปซมาตรฐาน ;
นานาชาติ หลัก ( ) {
นานาชาติ ฉัน = 1 ; // เริ่มต้นตัวแปรเคาน์เตอร์เป็น 1
// วนซ้ำในขณะที่ตัวแปรตัวนับน้อยกว่าหรือเท่ากับ 10
ในขณะที่ ( ฉัน <= 10 ) {
ศาล << ฉัน << จบ ; // ส่งออกค่าปัจจุบันของตัวแปรตัวนับ
ฉัน ++; // เพิ่มตัวแปรตัวนับ
}
กลับ 0 ;
}
โค้ดนี้สาธิตวิธีการใช้ลูป while ใน C++ โปรแกรมเริ่มต้นตัวแปรตัวนับ ฉัน เป็น 1 แล้วดำเนินการวนลูปที่จะทำงานต่อไปจนกว่าจะถึง ฉัน กลายเป็นมากกว่า 10
ภายในลูป while ค่าปัจจุบันของตัวแปรตัวนับจะถูกพิมพ์ไปยังคอนโซลโดยใช้ ศาล คำสั่งตามด้วยตัวแบ่งบรรทัดโดยใช้ จบ . ตัวแปรตัวนับจะเพิ่มขึ้นทีละ 1 โดยใช้ ฉัน ++ คำแถลง.
การวนซ้ำจะดำเนินการต่อไปจนกว่าตัวแปรตัวนับ ฉัน ถึงค่า 11 ซึ่งเมื่อออกจากลูปแล้วโปรแกรมจะสิ้นสุดด้วยค่าที่ส่งคืนเป็น 0
C ++ ซ้อนกันในขณะที่วนซ้ำ
นอกจากนี้ยังสามารถใช้ลูป while ได้ ซ้อนกัน ซึ่งหมายความว่าคุณสามารถมีลูป while ภายในอีกลูปหนึ่งได้ สิ่งนี้มีประโยชน์ในกรณีที่คุณต้องทำงานซ้ำๆ จนกว่าจะตรงตามเงื่อนไขที่กำหนด และภายในงานนั้น คุณต้องทำงานอื่นซ้ำๆ จนกว่าจะตรงตามเงื่อนไขอื่น
ในลูป while ที่ซ้อนกัน ลูปนอกจะทำงานหนึ่งครั้ง จากนั้นลูปในจะทำงานทุกครั้งที่ลูปนอกทำงาน ลูปในจะดำเนินการอย่างเต็มที่หนึ่งครั้งสำหรับทุกๆ การวนซ้ำของลูปนอก
ตัวอย่าง
ต่อไปนี้คือตัวอย่างโค้ดของการใช้ Nested while loop ใน C++:
#รวมถึงใช้เนมสเปซมาตรฐาน ;
นานาชาติ หลัก ( ) {
นานาชาติ ฉัน = 1 ; // เริ่มต้นตัวแปรเคาน์เตอร์เป็น 1
// วนซ้ำในขณะที่ตัวแปรตัวนับน้อยกว่าหรือเท่ากับ 3
ในขณะที่ ( ฉัน <= 3 ) {
นานาชาติ เจ = 1 ; // เริ่มต้นตัวแปรตัวนับภายในเป็น 1
// วนซ้ำในขณะที่ตัวแปรตัวนับภายในมีค่าน้อยกว่าหรือเท่ากับ 3
ในขณะที่ ( เจ <= 3 ) {
ศาล << ฉัน << ' ' << เจ << ' \n ' ; // ส่งออกค่าปัจจุบันของตัวแปรตัวนับ
เจ ++; // เพิ่มตัวแปรตัวนับภายใน
}
ฉัน ++; // เพิ่มตัวแปรตัวนับภายนอก
}
กลับ 0 ;
}
ในรหัสนี้ วงรอบนอกจะทำงานตราบเท่าที่ ฉัน จะเท่ากับ 3 เมื่อค่าของ ฉัน กลายเป็นมากกว่า 3 ลูปจะหยุด ด้วยการวนซ้ำรอบนอกทุกครั้ง ตัวแปรตัวนับภายใน เจ ถูกเตรียมใช้งานเป็น 1 และดำเนินการในขณะที่วงใน วงในนี้จะทำงานจนถึงค่าของ เจ กลายเป็นมากกว่า 3 .
ภายในวงใน เราส่งออกค่าของ ฉัน และ เจ . หลังจากนั้นเราก็เพิ่ม เจ . สิ่งนี้จะดำเนินต่อไปจนกว่าวงในจะถูกดำเนินการสามครั้ง ทุกครั้งที่เพิ่มวงรอบนอก วงในจะถูกดำเนินการอีกครั้ง
กระบวนการนี้ทำซ้ำจนกว่าลูปภายนอกจะถูกดำเนินการสามครั้งและทั้งสองลูปก็เสร็จสิ้น ผลลัพธ์ของโค้ดนี้คือตารางค่าตั้งแต่ 1 1 ถึง 3 3 ดังที่แสดงในภาพด้านล่าง
C ++ ไม่มีที่สิ้นสุดในขณะที่วนซ้ำ
ใน C++ การวนซ้ำแบบไม่มีที่สิ้นสุดก็เป็นไปได้เช่นกัน ลูป while ที่ไม่สิ้นสุดจะทำงานอย่างต่อเนื่องเนื่องจากไม่มีเงื่อนไขใดที่กำหนดให้เป็นเท็จได้ เงื่อนไขที่แท้จริงมีเพียงหนึ่งเดียว , สิ่งนี้ทำให้ลูป while ทำงานต่อเนื่องเป็นจำนวนไม่สิ้นสุด
ตัวอย่างเช่น ลูปที่ระบุด้านล่างจะดำเนินการตลอดไปและเพื่อหยุดลูปนี้เราต้องกำหนดคำสั่ง break ที่ส่วนท้ายของลูปนี้
ในขณะที่ ( จริง ) {// รหัสที่จะดำเนินการ
}
การวนซ้ำไม่สิ้นสุดอาจมีประโยชน์ในบางกรณี เช่น ในระบบฝังตัวหรือเมื่อรอการป้อนข้อมูลจากผู้ใช้
ตัวอย่าง
ด้านล่างนี้คือตัวอย่างโปรแกรม C++ ที่ทำงานวนซ้ำแบบไม่สิ้นสุดในโค้ด C++:
#รวมถึงใช้เนมสเปซมาตรฐาน ;
นานาชาติ หลัก ( ) {
นานาชาติ นับ = 0 ;
ในขณะที่ ( จริง ) {
ศาล << 'ไม่สิ้นสุดในขณะที่วนซ้ำ \n ' ;
นับ ++;
ถ้า ( นับ >= 10 ) {
หยุดพัก ;
}
}
กลับ 0 ;
}
รหัสที่กำหนดสร้างการวนซ้ำไม่สิ้นสุดที่ส่งออกสตริง 'Infinitive while Loop' ไปยังคอนโซลอย่างต่อเนื่อง เนื่องจากเงื่อนไขของลูป while ถูกตั้งค่าเป็นจริง ซึ่งลูปจริงเสมอจะไม่สิ้นสุด
หากต้องการหยุดการวนซ้ำแบบไม่มีที่สิ้นสุด เราสามารถใช้คำสั่ง break เพื่อออกจากการวนซ้ำเมื่อตรงตามเงื่อนไขที่กำหนด ในโปรแกรมข้างต้น เราได้ตั้งค่าจำนวนการวนซ้ำสูงสุดเป็น 10 ซึ่งควบคุมโดย นับ ตัวแปรและคำสั่งแบ่ง
โค้ดด้านบนจะทำงานไม่จำกัดเวลา แต่การใช้คำสั่ง break จะหยุดการทำงานหลังจากทำซ้ำ 10 ครั้ง
การพิมพ์เลขคู่และเลขคี่ด้วย while Loop
อีกตัวอย่างหนึ่งของลูป while กำลังพิมพ์เลขคู่และเลขคี่ ตัวอย่างเช่น รหัสที่กำหนดต่อไปนี้ใช้การวนรอบในขณะที่ใน C ++ เพื่อส่งออกเลขคู่ตั้งแต่ 2 ถึง 10
#รวมถึงใช้เนมสเปซมาตรฐาน ;
นานาชาติ หลัก ( ) {
นานาชาติ ฉัน = 2 ; // เริ่มต้นตัวแปรเคาน์เตอร์เป็น 2
// วนซ้ำในขณะที่ตัวแปรตัวนับน้อยกว่าหรือเท่ากับ 10
ในขณะที่ ( ฉัน <= 10 ) {
ศาล << ฉัน << จบ ; // ส่งออกค่าปัจจุบันของตัวแปรตัวนับ
ฉัน += 2 ; // เพิ่มตัวแปรตัวนับทีละ 2
}
กลับ 0 ;
}
รหัส C ++ นี้เริ่มต้นตัวแปรตัวนับ ฉัน ถึง 2 และใช้ลูป while เพื่อส่งออกค่าของ ฉัน ตราบเท่าที่มันน้อยกว่าหรือเท่ากับ 10 ในทุก ๆ การวนซ้ำ มันจะเพิ่มขึ้น ฉัน คูณ 2 ทุกครั้งที่ลูปรันเอาต์พุตจะถูกพิมพ์บนเทอร์มินัล หลังจากการวนซ้ำเสร็จสิ้น โปรแกรมจะคืนค่า 0 เพื่อบ่งชี้การดำเนินการที่สำเร็จ
ในทำนองเดียวกันเรายังสามารถพิมพ์ แปลก ตัวเลขตั้งแต่ 1 ถึง 9:
#รวมถึงใช้เนมสเปซมาตรฐาน ;
นานาชาติ หลัก ( ) {
นานาชาติ ฉัน = 1 ; // เริ่มต้นตัวแปรเคาน์เตอร์เป็น 1
// วนซ้ำในขณะที่ตัวแปรตัวนับน้อยกว่าหรือเท่ากับ 9
ในขณะที่ ( ฉัน <= 9 ) {
ศาล << ฉัน << จบ ; // ส่งออกค่าปัจจุบันของตัวแปรตัวนับ
ฉัน += 2 ; // เพิ่มตัวแปรตัวนับทีละ 2
}
กลับ 0 ;
}
ในโค้ดนี้ เงื่อนไขการวนซ้ำจะทำงานจนถึงตัวแปรตัวนับ ฉัน น้อยกว่าหรือเท่ากับ 9 ศาล คำสั่งภายในลูปส่งออกค่าปัจจุบันของ ฉัน และจากนั้น ฉัน ตัวแปรเพิ่มขึ้นทีละ 2 โดยใช้ ฉัน += 2 คำแถลง. สิ่งนี้ทำให้มั่นใจได้ว่าลูปจะพิมพ์เฉพาะตัวเลขคี่เท่านั้น
ในตอนท้ายของโปรแกรม คำสั่ง return ใช้เพื่อระบุว่าฟังก์ชัน main() เสร็จสมบูรณ์
บทสรุป
ลูป while เป็นโครงสร้างควบคุมที่รันโปรแกรมตราบเท่าที่เงื่อนไขที่กำหนดเป็นจริง ในที่นี้เราได้กล่าวถึงไวยากรณ์พื้นฐานและตัวอย่างการใช้ while ใน C++ นอกจากนี้เรายังอธิบายถึงวิธีการใช้ลูป while ในรูปแบบที่ซ้อนกัน และวิธีการเรียกใช้ while วนซ้ำเป็นจำนวนไม่สิ้นสุด สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับ C++ while loop โปรดอ่านบทความ