Vòng lặp là một câu lệnh tiếp tục chạy cho đến khi một điều kiện được thỏa mãn. Cú pháp của vòng lặp while như sau:
while (condition) {Exp}
Lưu ý : Hãy nhớ viết điều kiện đóng tại một thời điểm nào đó nếu không vòng lặp sẽ tiếp diễn vô thời hạn.
Ví dụ 1:
Hãy xem qua một ví dụ rất đơn giản để hiểu khái niệm về vòng lặp while. Bạn sẽ tạo một vòng lặp và sau mỗi lần chạy, thêm 1 vào biến được lưu trữ. Bạn cần phải đóng vòng lặp, do đó chúng tôi nói rõ ràng với R ngừng lặp lại khi biến đạt đến 10.
Lưu ý : Nếu bạn muốn xem giá trị vòng lặp hiện tại, bạn cần bọc biến bên trong hàm print ().
#Create a variable with value 1begin <- 1#Create the loopwhile (begin <= 10){#See which we arecat('This is loop number',begin)#add 1 to the variable begin after each loopbegin <- begin+1print(begin)}
Đầu ra:
## This is loop number 1[1] 2## This is loop number 2[1] 3## This is loop number 3[1] 4## This is loop number 4[1] 5## This is loop number 5[1] 6## This is loop number 6[1] 7## This is loop number 7[1] 8## This is loop number 8[1] 9## This is loop number 9[1] 10## This is loop number 10[1] 11
Ví dụ 2:
Bạn đã mua một cổ phiếu với giá 50 đô la. Nếu giá xuống dưới 45, chúng tôi muốn bán khống. Nếu không, chúng tôi giữ nó trong danh mục đầu tư của mình. Giá có thể dao động trong khoảng -10 đến +10 khoảng 50 sau mỗi vòng lặp. Bạn có thể viết mã như sau:
set.seed(123)# Set variable stock and pricestock <- 50price <- 50# Loop variable counts the number of loopsloop <- 1# Set the while statementwhile (price > 45){# Create a random price between 40 and 60price <- stock + sample(-10:10, 1)# Count the number of looploop = loop +1# Print the number of loopprint(loop)}
Đầu ra:
## [1] 2## [1] 3## [1] 4## [1] 5## [1] 6## [1] 7
cat('it took',loop,'loop before we short the price. The lowest price is',price)
Đầu ra:
## it took 7 loop before we short the price.The lowest price is 40