R Vòng lặp while với các ví dụ lập trình

Vòng lặp while trong lập trình R

Vòng lặp While trong lập trình R là một câu lệnh tiếp tục chạy cho đến khi thỏa mãn một điều kiện sau khối while.

Cú pháp vòng lặp while trong R

Sau đây là cú pháp của vòng lặp While trong lập trình R:

while (condition) {
     Exp	
}

R Sơ đồ vòng lặp while

R Sơ đồ vòng lặp while
R Sơ đồ vòng lặp while

Chú thích: 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 tục vô thời hạn.

Ví dụ về vòng lặp while trong R

Ví dụ 1

Chúng ta hãy đi qua một điều rất đơn giản Lập trình R ví dụ để hiểu khái niệm vòng lặp while. Bạn sẽ tạo một vòng lặp và sau mỗi lần chạy, hãy thêm 1 vào biến được lưu trữ. Bạn cần đóng vòng lặp, do đó chúng tôi yêu cầu R dừng vòng lặp một cách rõ ràng khi biến đạt đến 10.

Chú thích: 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 1
begin <- 1

#Create the loop
while (begin <= 10){

#See which we are  
cat('This is loop number',begin)

#add 1 to the variable begin after each loop
begin <- begin+1
print(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 ta muốn bán khống. Nếu không, chúng ta giữ cổ phiếu trong danh mục đầu tư của mình. Giá có thể dao động trong khoảng -10 đến +10 quanh mức 50 sau mỗi vòng lặp. Bạn có thể viết mã như sau:

set.seed(123)
# Set variable stock and price
stock <- 50
price <- 50

# Loop variable counts the number of loops 
loop <- 1

# Set the while statement
while (price > 45){

# Create a random price between 40 and 60
price <- stock + sample(-10:10, 1)

# Count the number of loop
loop = loop +1 

# Print the number of loop
print(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