求javascript脚本语言求出1到100之间所有偶数之和的代码?
9个回答
展开全部
我们以通用型自然整数n到m之间的所有偶数之和来讲解。(n<m )
要求偶数之和,我们需要先判断一个数是偶数还是奇数,偶数是能被2整除的数。如果是偶数就进行相加运算。由于每次相加会产生一个新的值,所以我们需要一个变量来记录每次相加的值,便于下次再计算。
现在以代码来讲解:
//以for循环为例
function sumOdd( n, m ) {
var i, r = 0; //r用于记录每次相加的结果
for( i = n; i < m + 1; i++ ) {
if( i % 2 === 0 ) { //%模运算即取余,如果余数等于0,说明是偶数
r += i;
}
}
return r;//计算完毕返回结果
}
sumOdd( 1, 100 );//2550
//以递归方式为例
//递归调用不推荐使用,当数据很大的时候,会容易栈溢出。
//这里只是作为例子讲解一下不同的方法
function sumOdd( n, m ) {
if( n === m ) { //当n和m相等时,结速递归
if( n % 2 === 0 ) { //判断是否为偶数,返回相应的结果完成递归运算
return n;
} else {
return 0;
}
}
if( n % 2 === 0 ) {
return n + sumOdd( n + 1, m );
} else {
return sumOdd( n + 1, m );
}
}
sumOdd( 1, 100 );//2550
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
<script>
var sum = 0; //定义一个初始值为0的sum变量做为累加器
for(var i = 2;i <= 100;i+=2){ //定义初始即为2偶数的循环,最大为100,每次+2,即只循环1-100内的偶数
sum += i; //起始为偶数,每次+2也为偶数,所以将i的值累加到sum中
}
console.log(sum) //循环完成,计算完毕,最后在控制台输出求和结果,2550
<script>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
//定义合值的初始值sum,循环次数i
var sum = 0,i = 2;
//范围是100以内,因此,我们把范围设定在0-100;由于需要偶数,
//我们已知第0-100的第一个偶数是2,接下来的每个偶数只要+2就可以得到。
for(; i <= 100; i+=2){
//每一次循环中把这次i的值加给sum
sum+=i;
}
//最后在控制台打印出最终的合值是多少。
console.log(sum)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
最快最直接的方式
function sum_even_1to100() {
return 2550;
}
使用数学公式
function sum_even_via_math(from, to) {
return (Math.ceil(from / 2) + Math.floor(to / 2)) * 100 / 2
}
使用循环
function sum_even(from, to) {
var total = 0;
for (var i = Math.ceil(from / 2); i <= Math.floor(to / 2)); i+=2) {
total += i;
}
return total;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询