javascript - Returning sum of added values from 1 and n only if that value is not divisible by 3 or 5
问题描述
This question has 2 test cases, the inputs of 10 & 15.
function threesFives(num){
var sum = 0;
for(let i = 1; num >= i; i++){
if (i % 3 == 0 || i % 5 == 0){
sum += i;
}
}
return sum
}
I don't see why only Test case 2 (input of 15) is passed, but Test Case 1 is not (gives me a sum of 33, which needs to be 22).
解决方案
You say "Return sum of added values from 1 and n only if that value is not divisible by 3 or 5". So if the number is divisible by 3 or 5, you skip it in the loop. You're doing the opposite right now. You code passes the first case by pure coincidence
Your code should be somewhat like this
function threesFives(num){
var sum = 0;
for(let i = 1; num >= i; i++){
if (i % 3 == 0 || i % 5 == 0){
continue;
}
sum += i;
}
return sum
}
console.log(threesFives(10))
推荐阅读
- mongodb - 将列的最大值与另一列进行比较
- reactjs - 错误:请求的资源上不存在“Access-Control-Allow-Origin”标头
- r - 使用 %in% 时的浮点问题
- paraview - 在 Paraview 中计算张量的转置
- python - 使用 jinja(烧瓶)在 2 个单独的列中使用 2 个循环数据?
- ios - 旁白:UIAccessibilityLayoutChangedNotification 不起作用
- python-3.x - 跨两个列表框移动项目时,Python tkinter 保持名称顺序一致
- typescript - typescript 动态导入与 tsconfig.json 中的 webpack.config 冲突?
- python - 从包含python中字典的嵌套列表创建字典
- python-3.x - 单个轮廓的边界框,一种颜色除外