从n到m的偶数和,无论n m JavaScript
我们需要编写一个函数,该函数使用两个数字作为参数m和n,并返回介于m和n之间(包括两端)的所有偶数之和。
例如-
If m = 10 and n = -4
输出应为10+8+6+4+2+0+(-2)+(-4)=24
方法
我们将首先计算最大为n的所有偶数之和和最大为m的所有偶数之和。
然后,我们将检查两个m和n中的较大者。从较大的总和中减去较小的总和,最终将得到m与n之间的总和。
式
从0到N的所有偶数之和由-
$$\frac{N\times(N+2)}{4}$$
因此,让我们将所有这些都放入代码中-
示例
const sumEven = n => (n*(n+2))/4; const evenSumBetween = (a, b) => { return a > b ? sumEven(a) - sumEven(b) + b : sumEven(b) - sumEven(a) + a; }; console.log(evenSumBetween(-4, 10)); console.log(evenSumBetween(4, 16)); console.log(evenSumBetween(0, 10)); console.log(evenSumBetween(8, 8)); console.log(evenSumBetween(-4, 4));
输出结果
控制台中的输出将为-
24 70 30 8 0