คำสั่ง ในขณะที่ ดำเนินการคำสั่งหรือกลุ่มของคำสั่งซ้ำ ๆ เมื่อเงื่อนไขที่กำหนดเป็นจริง มีการทดสอบเงื่อนไขก่อนดำเนินการตัวลูป
รูปแบบไวยากรณ์เป็นดังนี้:
ในขณะที่ (เงื่อนไข) { คำสั่ง (s);}
ในที่นี้ คำสั่งอาจเป็นคำสั่งเดียวหรือบล็อกโค้ดที่ประกอบด้วยหลายคำสั่ง
เงื่อนไขสามารถเป็นนิพจน์ใดก็ได้ และลูปจะถูกดำเนินการเมื่อเงื่อนไขเป็นจริง เมื่อเงื่อนไขเป็นเท็จ โฟลว์ของโปรแกรมจะออกจากลูป
ในแผนภาพ จุดสำคัญเกี่ยวกับการวนซ้ำ while คือ การวนซ้ำอาจไม่ทำงานแม้แต่ครั้งเดียว เมื่อเงื่อนไขเป็นเท็จ เนื้อความของลูปจะถูกข้ามไป และคำสั่งถัดไปทันทีที่ตามมาหลังจากลูป while จะถูกดำเนินการโดยตรง
ในโปรแกรม เนื้อความของลูปจะถูกดำเนินการเมื่อตัวแปร $a น้อยกว่า 20 และออกจากลูปเมื่อตัวแปร $a มากกว่าหรือเท่ากับ 20
เมื่อรันโปรแกรมข้างต้น ผลลัพธ์ที่ได้คือ:
ค่าของ a คือ: ค่าของ 10a คือ: ค่าของ 11a คือ: ค่าของ 12a คือ: ค่าของ 13a คือ: ค่าของ 14a คือ: ค่าของ 15a คือ: ค่าของ 16a คือ: ค่า ของ 17a คือ: ค่าของ 18a คือ: 19