Home > Blockchain >  iterating from 0 to 100 and printing the sum of all evens and the sum of all odds as array
iterating from 0 to 100 and printing the sum of all evens and the sum of all odds as array

Time:07-11

I am trying to iterate from 0 to 100 and trying to print the sum of even numbers and odd numbers as array, like this [2550, 2500].

let m=0;

for(let i=0;i<=100;i  ) { 
  m = m   i;
}

console.log(Array.from(String(m)));

but this code is returning  ['2', '5', '0', '0']

Can anyone please show me how can I print both the sums as array?

Also if someone could help me with the code for putting this code into other conditional statement so that I can get both, the sum of odd numbers and sum of even numbers. I am facing issue deciding which one to use here, else if, if else....

CodePudding user response:

You just need to check the reminder of the number(i), if it's zero then it is even else it's odd.

let m=0,k=0;
for(let i=0;i<=100;i  )
{ 
if(i%2==0)m =i
    else k =i;
}

then console.log([m,k]);

CodePudding user response:

Your code is calculating the sum of all the numbers in the range of 0-100.

m will have the sum of range(0-100) that is 5050.

for(let i=0;i<=100;i  ) { 
  m = m   i;
}

This line will split the digits of variable m and make an array of it.

console.log(Array.from(String(m)));

['5','0','5','0']

You can have two variables for even_sum and odd_sum and then check if i is odd then add it to even_sum else add it to `odd_sum'.

let even_sum=0;
let odd_sum=0;

for(let i=0;i<=100;i  ) { 
    if (i%2==0)
        even_sum =i;
    else
        odd_sum =i;
}

To return the values as array, you can do -

console.log([even_sum,odd_sum])

CodePudding user response:

As you tagged the question with I think the mathematics of triangular numbers should be mentioned here:

function sumOddEven(n) {
    const floor = Math.floor(n / 2);
    const ceil = Math.ceil(n / 2);
    return [ceil * ceil, floor * (1   floor)];
}

console.log(sumOddEven(100))

CodePudding user response:

Use an array to sum each parity individually.

m=[0,0];
for (i=0;i<101;i  )
m[i%2] =i;
console.log(m);

  • Related