Java基础案例:折纸高于珠穆朗玛峰(while循环)详解

需求:

世界最高山峰珠穆朗玛峰(8848.86米 = 8848860毫米),假如有一张足够大的纸,它的厚度是0.1毫米.请问,折叠多少次可以折成山峰的高度?

思路:

这种不知道循环多少次的情况可以用while循环实现

分析:

① 定义变量存储珠穆朗玛峰的高度和纸张的厚度.

② 使用while循环,循环条件是(纸张厚度 < 山峰高度),内部控制纸张折叠.每折叠一次,纸张厚度变为原来的两倍,循环外定义计数变量count,每折叠一次该变量加1.

    public static void main(String[] args){
    //1.定义变量记录山峰高度和纸张厚度
    double peakHeight = 8848860;//山峰高度
    double paperThickness = 0.1;//纸张厚度
    //3.定义一个变量用于记录纸张折叠的次数
    int count = 0;//变量初始化
    //2.定义一个while循环控制纸张进行折叠
    while (paperThickness < peakHeight){
    //每折叠一次,纸张厚度多一倍
    paperThickness *= 2;
    count++;//每折叠一次,count+1
}
    System.out.println("纸张需要折叠" + count + "次才能折成珠穆朗玛峰的高度");
}

运行截图:

 

你可能感兴趣的:(intellij-idea,java)