R ในขณะที่วนรอบ
ลูป
ลูปสามารถรันบล็อกของโค้ดได้ตราบเท่าที่ถึงเงื่อนไขที่ระบุ
ลูปมีประโยชน์เพราะช่วยประหยัดเวลา ลดข้อผิดพลาด และทำให้โค้ดอ่านง่ายขึ้น
R มีสองคำสั่งวน:
while
ลูปfor
ลูป
R ในขณะที่ลูป
ด้วยwhile
ลูปเราสามารถรันชุดคำสั่งได้ตราบใดที่เงื่อนไขเป็น TRUE:
ตัวอย่าง
พิมพ์i
ตราบเท่าที่i
น้อยกว่า 6:
i <- 1
while (i < 6) {
print(i)
i <- i + 1
}
ในตัวอย่างข้างต้น การวนซ้ำจะสร้างตัวเลขตั้งแต่ 1 ถึง 5 ต่อไป การวนซ้ำจะหยุดที่ 6 เนื่องจาก6 < 6
เป็น FALSE
ลู ปwhile
ต้องการให้ตัวแปรที่เกี่ยวข้องพร้อม ในตัวอย่างนี้ เราต้องกำหนดตัวแปรการจัดทำดัชนีi
ซึ่งเราตั้งค่าเป็น 1
หมายเหตุ:อย่าลืมเพิ่ม i ไม่เช่นนั้นการวนซ้ำจะดำเนินต่อไปตลอดไป
หยุดพัก
ด้วยbreak
คำสั่ง เราสามารถหยุดการวนซ้ำได้แม้ว่าเงื่อนไข while จะเป็น TRUE:
ตัวอย่าง
ออกจากลูปถ้าi
เท่ากับ 4
i <- 1
while (i < 6) {
print(i)
i <- i + 1
if
(i == 4) {
break
}
}
การวนซ้ำจะหยุดที่ 3 เนื่องจากเราได้เลือกที่จะจบการวนซ้ำโดยใช้break
คำสั่งเมื่อi
มีค่าเท่ากับ 4 ( i == 4
)
ถัดไป
ด้วยnext
คำสั่งนี้ เราสามารถข้ามการวนซ้ำได้โดยไม่ต้องสิ้นสุดการวนซ้ำ:
ตัวอย่าง
ข้ามค่าของ 3:
i <- 0
while (i < 6) {
i <- i + 1
if (i == 3) {
next
}
print(i)
}
เมื่อลูปผ่านค่า 3 มันจะข้ามและวนต่อไป
ยัทซี!
ถ้า .. อย่างอื่นรวมกับ while Loop
เพื่อแสดงให้เห็นตัวอย่างที่ใช้งานได้จริง ให้เราบอกว่าเราเล่นเกมของ Yahtzee!
ตัวอย่าง
พิมพ์ "ยัทซี!" ถ้าเลขลูกเต๋าคือ 6:
dice <- 1
while (dice <= 6) {
if (dice < 6) {
print("No
Yahtzee")
} else {
print("Yahtzee!")
}
dice <- dice
+ 1
}
หากลูปส่งผ่านค่าตั้งแต่ 1 ถึง 5 ระบบจะพิมพ์ว่า "No Yahtzee" เมื่อใดก็ตามที่ผ่านค่า 6 จะพิมพ์ "Yahtzee!"