A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© axiaowenjin 中级黑马   /  2016-7-2 00:57  /  612 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

用代码实现:
        (1)珠穆朗玛峰高度为8848米,有一张足够大的纸,厚度为0.001米。
        (2)请问,我折叠多少次,可以折成珠穆朗玛峰的高度
说说思路,我自己写

5 个回复

倒序浏览
我自己写了个代码,没通过。
回复 使用道具 举报
我的思路是利用for循环,一直到乘方和大于8848的那一次,然后打印for循环变量i的次数
回复 使用道具 举报
本帖最后由 ylca 于 2016-7-2 04:06 编辑

        Integer orHeight = 8848*1000;//实际高度
                Integer tempHeight = 1;//纸张厚度
                int number = 0;
                while (orHeight>tempHeight) {
                        //折叠
                        tempHeight =tempHeight*2;
                        number++;
                       
                }
                System.out.println("折叠次数:"+number);
                System.out.println("折叠高度:"+tempHeight/1000);
回复 使用道具 举报
for循环,每次折叠一次是上一次的二倍达到8848就停止
回复 使用道具 举报
qinxuezilu1314 来自手机 中级黑马 2016-7-2 09:00:00
地板
来一个for的无限循环,用一个自加记录折叠的次数,然后用一个if的判断语句,判断一下,再加上一个结束语句,跳出这个无限循环。就好了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马