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辆汽车。不过,速度越高,越有可能生产出有缺陷的汽车,这些汽车随后只能报废。
你有三个任务。
实现success_rate()方法,计算在给定速度下生产出无错误产品的比率。下表展示了速度如何影响成功率:
0:成功率 0%。1到4:成功率 100%。5到8:成功率 90%。9:成功率 80%。10:成功率 77%。success_rate(10)
# => 0.77
实现production_rate_per_hour()方法,计算装配线每小时的产量,并考虑其成功率:
production_rate_per_hour(6)
# => 1193.4
注意,返回的值是double类型。
实现working_items_per_minute()方法,计算每分钟生产多少辆合格汽车:
working_items_per_minute(6)
# => 19
注意,返回的值是整数:不完整的产品不计入。