學習軌道
/
R
R
/
練習
/
汽車,集結
汽車,集結

汽車,集結

學習練習

簡介

比較運算子

R 有一組運算子,和其他許多程式語言相同:

1 == 2 # FALSE
1 != 2 # TRUE
1 < 2 # TRUE
1 > 2 # FALSE
1 <= 2 # TRUE
1 >= 2 # FALSE

分支

if-else 的基本形式是

if (x > 10) {
    y <- "big"
} else if (x > 2) {
    y <- "medium"
} else {
    y <- "tiny"
}

在這個情況下,布林值周圍的小括號 () 和敘述周圍的大括號 {} 都是必需的。 簡單的if敘述可以縮短:

if (x == 0) return("success")

說明

在這道練習中,你會撰寫程式碼來分析汽車工廠組裝線的生產情形。組裝線的速度可以從0(關閉)到10(最大)。

在最低速度(1)下,每小時會生產221輛車。產量會隨速度呈線性成長,所以當速度設為4時,每小時應該生產4 * 221 = 884輛車。不過,速度越快,就越可能生產出有瑕疵的車輛,這些車之後必須被丟棄。

這道練習共有三個任務喔。

1. 計算成功率

實作success_rate()方法,計算在指定速度下,產品能被正確製造出來的比率。以下列出速度對成功率的影響:

  • 0:成功率 0%。
  • 1到4:成功率 100%。
  • 5到8:成功率 90%。
  • 9:成功率 80%。
  • 10:成功率 77%。
success_rate(10)
# => 0.77

2. 計算每小時的生產速率

實作production_rate_per_hour()方法,計算組裝線每小時的生產速率,並把成功率納入考量:

production_rate_per_hour(6)
# => 1193.4

注意,回傳的值是double。

3. 計算每分鐘生產的可用車輛數量

實作working_items_per_minute()方法,計算每分鐘能生產多少輛可用的車:

working_items_per_minute(6)
# => 19

注意,回傳的值是整數:未完成的項目不會計入。

透過 GitHub 編輯 連結會在新視窗或分頁中開啟
R Exercism

準備好開始 汽車,集結 了嗎?

註冊 Exercism,透過 21 個概念111 個練習 和真人引導來學習並精通 R,全部免費。