for循环的应用

题目1反转字符串,将字符串str = 'i love china' 反转为china love i

var str = 'i love china';
var arr = str.split(' ');//首先,将字符串str使用split(' ')方法进行分割,该方法会将字符串按照空格进行拆分,并返回一个由拆分后的子字符串组成的数组
var rs = '';
for(
    var i = arr.length-1;i>=0;i--)//接下来,可以使用for循环遍历数组,并将数组中的元素按照反向顺序拼接成一个新的字符串。
{
rs += arr[i]+' ';
}//在循环中,设置初始值i为数组的长度减1,每次循环时将i递减1,直到i大于等于0为止。在每次循环中,将arr[i]添加到rs中,并在末尾添加一个空格。
console.log(rs);//打印结果

结果:

china love i

题目21-1000完美数一个数本身等于它的因子之和 6 = 1 + 2 + 3

var knum = [];//先定义一个空数组,用来存储完美数
for(var num = 1;num <= 1000; num++){//要找出1-1000之间的完美数,先使用for循环,从1迭代到1000,检查是否有完美数
    var sum = 0;
    for(var i = 1;i <= num / 2;i++){//用num除以i(num/2),如果能除尽,所得数就是num的因子,将其累加到sunm中
        if(num % i ===0){
            sum += i;
        }
    }

if(sum === num){//如果累加的sum最后等于除数num本身,那么此num就是完美数
    knum.push(num);
    }
}
console.log("1到1000之间的完美数",knum);//打印结果

结果:

1到1000之间的完美数 [ 6, 28, 496 ]

题目3组合数 1,2,3,4组合个位、十位、百位各不相同的三位数

var sum = [];
for(var i = 1; i <=4; i++){//百位
    for(var j = 1; j <= 4; j++){//十位
        for(var k = 1; k <=4; k++)//个位
    
    if(i !== k && i !== j && j !== k){//声明i,j,k都不相等
        var num = i*100+j*10+k;
        sum += num + ' ';
}
}
}
console.log(sum);

结果:

123 124 132 134 142 143 213 214 231 234 241 243 312 314 321 324 341 342 412 413 421 423 431 432

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值