在控制台输出所有的“水仙花数”

/*分析:
* 所谓的水仙花是指一个三位数,其各位数字的立方和等于该数本身
* 举例:153就是一个水仙花数。
* 153 = 1*1*1 + 5*5*5 + 3*3*3 = 1 + 125 +27 =153
*
* A:三位数其实是告诉了我们范围
* B:通过for循环我们就可以实现获取每一个三位数
* 但是麻烦是如何获取这个三位数的个,十,百位上的数据
*
* 我们如何获取一个数据的个,十,百呢?
* 假设有个一个数据:153
* ge: 153%10 = 3
* shi: 153/10%10 = 5
* bai: 153/10/10%10 = 1
* qian: x/10/10/10%10
* wan: x/10/10/10/10%10
* ...
*
* C: 让ge*ge*ge+shi*shi*shi+bai*bai*bai和该数据比较
* 如果相同,就把该数据在控制台输出
*/

     public class ForDemo{

        //三位数其实告诉了我们范围

        public static void main(String[] args){

            for(int x = 100; x <1000; x++){

             int ge = x%10;

             int shi = x/10%10;

             int bai = x/10/10%10;

 

             //让ge*ge*ge+shi*shi*shi+bai*bai*bai和该数据比较

            if(x==(ge*ge*ge+shi*shi*shi+bai*+bai*bai)){

             //如果相同,就把该数据在控制台输出

               System.out.println(x);            

               }

               }

          }

      }

 

最终结果:

转载于:https://www.cnblogs.com/BruningHUA/p/6772450.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值