嵌套 if-else
本课属于 Coddy R 学习旅程的“基础知识”单元。第 25 课,共 78 课。
有时,两个选项还不够。如果你需要检查多个条件,并对每个条件进行不同的处理,该怎么办?你可以在另一个 if 或 else 代码块中放入 if-else 语句,从而创建更复杂的决策路径。
score <- 85
if (score >= 90) {
print("Grade: A")
} else {
if (score >= 80) {
print("Grade: B")
} else {
print("Grade: C or below")
}
}R 首先检查分数是否达到 90 分或以上。由于 85 不满足这个条件,程序会进入 else 代码块。
在里面,另一个 if 会检查分数是否至少为 80。由于 85 通过了这个测试,它会打印 "Grade: B"。
R 提供了一种更简洁的写法,可以使用 else if:
score <- 85
if (score >= 90) {
print("Grade: A")
} else if (score >= 80) {
print("Grade: B")
} else {
print("Grade: C or below")
}这两种方式的工作原理相同,但 else if 能让代码结构更扁平,也更容易阅读。你可以根据需要连接任意多个 else if 代码块,R 只会执行条件为真的第一个代码块。
挑战
简单使用嵌套的 if-else 或 else if 语句,根据年龄确定票价,创建一个票价系统。
已提供以下变量:
age <- 25编写一系列条件,根据以下规则确定并打印票价:
- 如果年龄小于 5 岁,打印
"Free" - 如果年龄在 5 到 12 岁之间(含 5 岁和 12 岁),打印
"$5" - 如果年龄在 13 到 17 岁之间(含 13 岁和 17 岁),打印
"$8" - 如果年龄在 18 到 64 岁之间(含 18 岁和 64 岁),打印
"$12" - 如果年龄为 65 岁或以上,打印
"$7"
使用 print() 函数输出结果。
亲手试试
# 已提供变量
age <- 25
# TODO:在下方编写你的代码
# 使用嵌套的 if-else 或 else if 语句确定票价
# 根据给定的年龄规则这节课包含一个小测验。开始学习即可作答,并记录你的进度。
基础知识中的所有课
自己练习: R 在线编译器