百度IFE2018任务--17-18天

十进制转二进制。
核心思路:在while循环中,将十进制数字除以2,同时将除以2的余数一次次记录下来,而每次除以2得到的整数商就是下次用来除以2的。直到整数商不够用来除以2了就停止。记录下来的余数的排列顺序是反的,最后反转一下就好。

代码:

function dec2bin(decNumber) {
    // 在这里实现你的转化方法,注意需要判断输入必须为一个非负整数
    if(decNumber < 0){
        console.log('请输入非负整数');
        return;
    }
    if(decNumber == ''){
        console.log('请输入内容');
        return;
    }
    var bin = parseInt(decNumber);
    var bin2 = '';

    while(bin>0){
        bin2 += bin%2;
        bin = Math.floor(bin/2);
    }
    //反转字符串,要先转成数组,再反转,最后合并成字符串
    return bin2.split('').reverse().join('');
}

 

3的小游戏,练习使用循环和条件语句,实现如下需求:
从1到100,以此在console输出各数字,但是,当数字为3的倍数或者含有3的时候,输出“PA”
比如:1,2,PA,4,5,PA,……,11,PA,PA,14,PA……
思路:for循环中分两步,第一步输出的数字为3的倍数,只要用条件%3==0来判断就可以了,是则打印'PA'。第二步将这个数字转换成字符串,分割成数组,每一项都是数字的某一位上的数,再用includes()判断这个数组是否包含为'3'的元素即可,是则打印'PA'。

代码:

for(var i=1;i<=100;i++){
    if(i%3 == 0){
        console.log('PA');
        continue;
    }
    var n = i;
    //array.includes(searchElement[, fromIndex]) 判断一个数组是否包含一个指定的值,如果存在返回 true,否则返回false
    if(n.toString().split('').includes('3')){
        console.log('PA');
        continue;
    }
    console.log(i);
}

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值