JavaScript入门笔记(二):流程控制语句for和do…while练习案例

作者: JONE 分类: 前端学习 发布时间: 2017-07-01 12:33

用for循环和do…while循环做数学题

    <script>
    //(循环,分析)一张纸的厚度是0.01毫米,
    //则该纸对折30次后是多厚求出这个厚度是多少。(据说超过珠穆朗玛峰的高度)?
    //反过来,一张纸对折几次后,就超过1米厚了?
    //提示,把厚度转换成米,
    //var hou = 0.01/1000;
    //再进行运算比较方便
    
    //problem one 则该纸对折30次后是多厚求出这个厚度是多少
    var hou;
    var c=1;
    for(var i=1; i<=30;i++){
        c  *=2
    }
        hou=c*0.01/1000;
        document.write(hou+"<hr />");  // hou =10737.41824

    //problem two 反过来,一张纸对折几次后,就超过1米厚了?
    //  如果2的n次方乘以0.01>=1000 则n停止循环;

    var m=0;
    var n=1;
    do{
        m++;
        n*=2;
        
    }while((n*0.01)<=1000)  //当折纸的厚度小于等于1000时循环终止
    document.write(m); //要满足循环条件则折纸次数为 m-1  m = 17
    </script>

发表评论

电子邮件地址不会被公开。 必填项已用*标注