我目前正在进行一些 Code Wars 培训,但在第 n 个三角测试时遇到了麻烦。
这是问题:
您需要返回第 n 个三角形数。对于超出范围的值,您应该返回 0,但您总是会收到一个数字。
这是我当前的代码,当 n 仅以 1、2 和 3 的值传递时(这是通过测试所需的全部内容)。
# Return the nth triangular number
def triangular( n )
n * (n + 1) / 2
end
我继续通过大部分测试,但出现错误:
Expected: 0; instead got: 10
如果有人可以很好地解释这甚至会问什么,那就太好了,似乎无法在网上找到任何解释这个问题的材料。