The program is this: Insert a number, for example 5 and add it with all numbers below it. In this case, it would be 5 4 3 2 1=15
I have this:
var res = 0
function addUp3(num) {
for (var i = 0; i <= num; i ) {
console.log(i);
res = i;
console.log(res);
}
}
I have no clue why it prints out random numbers.
The output of this was: 0,0,1,1,2,3,3,6 (without commas)
I've tried looking for an answer online, but they all want to do it with arrays, I don't think it's neccesary to do so. Can someone open my mind a bit please.
CodePudding user response:
The for loop adds i each time. 0 1 2 ... n. The reason it's printing twice is because you have 2 console.logs.
- Log 1 prints 0 (i)
- Log 2 prints 0 (res i)
- Log 3 prints 1 (i)
- Log 4 prints 1 (res i)
- Log 5 prints 2 (i)
- Log 6 prints 3 (res i, which here would be 1 2)
If you just want the final answer, have a console.log(res) after your for loop
var res = 0
function addUp3(num) {
for (var i = 0; i <= num; i ) {
res = i;
}
console.log(res)
}
CodePudding user response:
I moved the final print of res
out of the loop and started the loop at 1
instead of 0
var res = 0
function addUp3(num) {
for (var i = 1; i <= num; i ) {
console.log(i);
res = i;
}
console.log(`sum: ${res}`);
}
addUp3(5);