遍历数字
本课属于 Coddy R 学习旅程的“基础知识”单元。第 54 课,共 78 课。
挑战
简单在上一课中,你创建了处理单个数字的 fizzbuzz 函数。现在,添加一个循环,处理从 1 到给定上限的数字范围。
修改代码以完成以下操作:
- 从输入中读取数字
n(它将作为上限) - 使用 for 循环从 1 遍历到
n - 对于范围内的每个数字,调用你的
fizzbuzz函数并打印结果
每个结果都应使用 print() 打印在新的一行上。
例如,如果输入是:
5输出应为:
[1] "1"
[1] "2"
[1] "Fizz"
[1] "4"
[1] "Buzz"如果输入是:
15输出应为:
[1] "1"
[1] "2"
[1] "Fizz"
[1] "4"
[1] "Buzz"
[1] "Fizz"
[1] "7"
[1] "8"
[1] "Fizz"
[1] "Buzz"
[1] "11"
[1] "Fizz"
[1] "13"
[1] "14"
[1] "FizzBuzz"亲手试试
# Read input
con <- file("stdin", "r")
number <- as.numeric(suppressWarnings(readLines(con, n = 1)))
# Function from previous lesson
check_divisible <- function(number, divisor) {
return(number %% divisor == 0)
}
# Create the fizzbuzz function
fizzbuzz <- function(n) {
if (check_divisible(n, 3) && check_divisible(n, 5)) {
return("FizzBuzz")
} else if (check_divisible(n, 3)) {
return("Fizz")
} else if (check_divisible(n, 5)) {
return("Buzz")
} else {
return(as.character(n))
}
}
# Call the fizzbuzz function and print the result
print(fizzbuzz(number))基础知识中的所有课
自己练习: R 在线编译器