i = 0
while i <= 1000
console.log i if i % 3 is 0
console.log i if i % 5 is 0
i++
我想将i
的每个输出添加到一起。即0+0+3+5+6+9+10...+1000
是否有算法在coffeescript中执行此操作,或者我是否只是开始将这些数字中的每一个添加到一起?
答案 0 :(得分:0)
你能使用众所周知的整数公式吗?
Sum(1 to n) = n(n+1)/2
看起来你想要3的倍数的整数之和加上5的倍数的整数之和。(你还需要删除15的多余倍数吗?)一旦你弄明白有多少每个<=1000
,只是缩放上述公式的问题。虽然这是一个数学问题而不是编程问题,但Coffeescript shell将是一个方便的计算器。
当然,最好根据蛮力(简单求和)测试结果。
我刚测试了两种方法。速度也不是问题。