While พร้อมการพิมพ์ผลลัพธ์
ลูป while แตกต่างจากลูป repeat เล็กน้อย เหมือนกับ if statement ตรงที่ต้องระบุเงื่อนไขไว้ตั้งแต่ต้น และไม่จำเป็นต้องใช้คำสั่ง break เพราะระบบจะตรวจสอบเงื่อนไขในทุกรอบของการวนซ้ำ
while (condition) {
code
}
อาจดูเหมือนว่าลูป while ทำงานเหมือนกับลูป repeat แทบทุกอย่าง เพียงแต่ใช้โค้ดน้อยกว่า ซึ่งในหลายกรณีก็เป็นเช่นนั้น แล้วทำไมถึงยังต้องใช้ลูป repeat? เพราะบางครั้งก็มีสถานการณ์ที่ต้องการให้ลูปทำงานซ้ำไปเรื่อย ๆ โดยไม่หยุด หากสนใจ สามารถอ่านเพิ่มเติมได้ ที่นี่ ในหัวข้อ Intentional Looping
สำหรับแบบฝึกหัดนี้ สมมติว่ามีหนี้อยู่ $5,000 และต้องชำระคืนทุกเดือน เดือนละ $500 จนกว่าจะหมด จะใช้ลูปจำลองกระบวนการชำระหนี้ในแต่ละเดือน โดยแต่ละรอบจะลดยอดหนี้ลงและพิมพ์ยอดหนี้ที่เหลืออยู่ออกมา
ตัวแปร debt ได้ถูกสร้างไว้ให้แล้ว
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
R ระดับกลางสำหรับการเงิน
คำแนะนำการฝึกหัด
- เติมเงื่อนไขในลูป while เพื่อตรวจสอบว่า
debtมากกว่า0หรือไม่ ถ้าใช่ ให้ลดdebtลง500
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Initial debt
debt <- 5000
# While loop to pay off your debt
while (debt > ___) {
debt <- debt - ___
print(paste("Debt remaining", debt))
}