如何用js求0到任意数的奇数和、偶数和以及累积求和。

JavaScript022

如何用js求0到任意数的奇数和、偶数和以及累积求和。,第1张

这个应该不难,我就喜欢做这样的题

//下面这个是比较傻的算法

var num = 100

//求奇数和

var sumOdd = (function(){

var i = 0,result = 0

while(i<=num){

result+=i

i+=2

}

return result

})()

window.alert(sumOdd)

//求偶数和

var sumEven = (function(){

var i=1,result = 0

while(i<=num){

result+=i

i+=2

}

return result

})()

window.alert(sumEven)

//求累加和

var sumAll = (function(){

var i=0,result = 0

while(i<=num){

result += i

i++

}

return result

})()window.alert(sumAll)

//上面是比较傻的办法,还有比较快捷的方法,求累加比较快捷的方法

比如从1加到100应该就是(1+100)× (100/2)

对应js应该是:

function sumAll(num){

var sumAll = (num%2==0)?((1+num)*(num/2)):((1+num)*((num-1)/2)+num)

return sumAll

}

alert(sumAll(100))

同样就奇数和与偶数和也可以简化,不过我得想想才成,以上算是抛砖引玉,看是否能帮到你吧。

var sunm = 0, i

for ( i = 1i <= 100i++ ){

if ( i % 2 == 0 ){

sunm += i

}

}

说明:

js中,%符号是求余数,使用变量i去除以2得到的余数,如果余数为0,说明变量i能被2整除,那么他就是偶数

既然是偶数,就用初始值为0的变量sunm加上这个变量i

代码运行到了最后,变量sunm就是你要的结果