【循环语句while】一、输入一个整数,计算它各位上数字的和。二、我现在有一张足够大的纸张,厚度为:0.01m。请问,我折叠多少次,就可以保证厚度不低于珠穆朗玛峰的高度? 三、 输出所有的水仙花数

输入一个整数,计算它各位上数字的和。
/*
* 输入一个整数,计算它各位上数字的和。
*
* 思路:
*   假设输入的整数为n;
*   然后定义一个变量存放各位上的和
*   int sum = 0;
*       1.先取低位
*           n % 10
*       2.把低位赋值个sum
*           sum += n%10
*       2.然后去掉低位
*           n / 10;
*    循环条件
*       只要n不等于0即可
*
*
* */

//导包
import java.util.Scanner;

public class WhileDemo {

    //编写一个方法
    public static void main(String[] args){

        //创建一个键盘录入对象
        Scanner sc = new Scanner(System.in);

        //提示录入并接收
        System.out.println("请输入数字:");
        int num = sc.nextInt();

        //定义一个变量存放num各位数的和
        int sum = 0;

        while(num != 0){
            sum += num % 10;
            num = num / 10;
        }
        System.out.println("各位数的和为" + sum);
    }

}

请添加图片描述

我现在有一张足够大的纸张,厚度为:0.01m。请问,我折叠多少次,就可以保证厚度不低于珠穆朗玛峰的高度?
/*
*我国最高山峰是珠穆朗玛峰:8848m,
* 我现在有一张足够大的纸张,厚度为:0.01m。
* 请问,我折叠多少次,就可以保证厚度不低于珠穆朗玛峰的高度?
*
* */
public class WhileDemo02 {

    //编写一个方法
    public static void main(String[] args){

        //定义珠穆朗玛峰的高度和纸的厚度
        double gao = 8848;
        double hou = 0.01;

        //循环判断条件
        //定义一个计数器,接收每次折叠的次数
        int count = 0;
        while (hou < gao){
            count ++;
            hou *= 2;
        }
        System.out.println("折叠" + count + "次,可以不低于珠穆朗玛峰");
    }
}

请添加图片描述

输出所有的水仙花数 统计水仙花数有多少个?
/*
* 输出所有的水仙花数
* 统计水仙花数有多少个
* 水仙花数是三位数
* 其各位上的数的立方和等于它本身
* */
public class WhileDemo03 {

    //编写一个方法
    public static void main(String[] args){

        //定义一个数统计水仙花的个数
        int count = 0;

        //循环三位数
        for (int i = 100; i <= 999; i++){

            //依次找到三位数的个位,十位,百位
            int ge = i % 10;
            int shi = i / 10 % 10;
            int bai = i / 100 % 10;

            //判断条件成立的三位数
            if (ge * ge * ge + shi * shi * shi + bai * bai * bai == i) {
                System.out.println("是水仙花数的数有:" + i);
                count++;
            }
        }
        System.out.println("水仙花的个数有:" + count + "个");

    }
}

请添加图片描述

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值