我对编程很新,并且热衷于学习R.我试图在R中解决经典的“Fizzbuzz”问题并且几乎找到了一种方法,但是我的循环打印了两次。尝试调试和搜索,但我似乎找不到任何东西。有什么建议吗?
tl; dr你知道为什么这个for循环打印两次吗?
fizzbuzz = function(n){
if ( n %% 15 == 0 ) {
print("Fizzbuzz")
} else
if ( n %% 5 == 0 ) {
print("buzz")
} else
if ( n %% 3 == 0 ) {
print("Fizz")
} else {
print(n)
}
}
for (a in 1:100)
print(fizzbuzz(a))
答案 0 :(得分:2)
因为你两次调用print
,一次在函数中,一次在循环中。删除循环中的print
,它只打印一次。
for (a in 1:100)
fizzbuzz(a)
答案 1 :(得分:1)
您正在打印fizzbuzz的结果并在函数内部。试试这个:
for (a in 1:100)
fizzbuzz(a)