1. 程式人生 > >R語言入門-迴圈

R語言入門-迴圈

迴圈

R程式語言提供以下種類的迴圈來處理迴圈需求。 單擊以下連結以檢查其詳細資訊。

No. 迴圈型別和描述 語法
1 repeat 迴圈

多次執行一系列語句,並簡化管理迴圈變數的程式碼。

repeat {

commands if(condition)

{ break }

}

2 while 迴圈

在給定條件為真時,執行語句。 它先執行語句,再判斷是否滿足給到條件。

while (expression) { statement }
3 for 迴圈

類似while語句,不同之處在於它先判斷是否滿足給到條件,再執行語句

for (expression) { statement }

例如:repeat

v <- c("Hello","loop")
cnt <- 2

repeat {
   print(v)
   cnt <- cnt+1
   
   if(cnt > 5) {
      break
   }
}

當上面的程式碼被編譯和執行時,它產生以下結果 -

[1] "Hello" "loop" 
[1] "Hello" "loop" 
[1] "Hello" "loop" 
[1] "Hello" "loop" 

例如:while

v <- c("Hello","while loop")
cnt <- 2

while (cnt < 7) {
   print(v)
   cnt = cnt + 1
}

當上面的程式碼被編譯和執行時,它產生以下結果 -

[1] "Hello"  "while loop"
[1] "Hello"  "while loop"
[1] "Hello"  "while loop"
[1] "Hello"  "while loop"
[1] "Hello"  "while loop"

例如 :for

v <- LETTERS[1:4]
for ( i in v) {
   print(i)
}

當上面的程式碼被編譯和執行時,它產生以下結果 -

[1] "A"
[1] "B"
[1] "C"
[1] "D"

迴圈控制語句

迴圈控制語句從其正常序列改變執行。 當執行離開作用域時,在該作用域中建立的所有自動物件都將被銷燬。 R語言支援以下控制語句。 單擊以下連結以檢查其詳細資訊。

Sr.No. 控制語句和描述
1 break 語句

終止迴圈語句,並將執行轉移到迴圈後立即執行的語句。

2 next 語句

next語句模擬R語言switch語句的行為。當我們想跳過迴圈的當前迭代而不終止它時便可使用next。

例如:break

v <- c("Hello","loop")
cnt <- 2

repeat {
   print(v)
   cnt <- cnt + 1
	
   if(cnt > 5) {
      break
   }
}

當上面的程式碼被編譯和執行時,它產生以下結果 -

[1] "Hello" "loop" 
[1] "Hello" "loop" 
[1] "Hello" "loop" 
[1] "Hello" "loop" 

例如:next

v <- LETTERS[1:6]
for ( i in v) {
   
   if (i == "D") {
      next
   }
   print(i)
}

當上面的程式碼被編譯和執行時,它產生以下結果 -

[1] "A"
[1] "B"
[1] "C"
[1] "E"
[1] "F"