唐祖庭 2021-09-12 18:26 采纳率: 95.9%
浏览 150
已结题

Java求水仙花数 利用for循环

题目:打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方+ 5的三次方 +3 的三次方。
程序分析:利用 for循环控制100-999个数,每个数分解出个位,十位,百位。

  • 写回答

1条回答 默认 最新

  • D狂风R 2021-09-12 19:01
    关注
    
        public static void main(String[] args) {
            List list = new ArrayList();
            for(int i = 100; i < 999; i++){
                String str = String.valueOf(i);
                if(test(str))
                    list.add(i);
            }
            System.out.println(list);
        }
    
        public static boolean test(String str){
            int sum = 0;
            for(int i = 0; i < str.length(); i++){
                String j = String.valueOf(str.charAt(i));
                int k = Integer.valueOf(j);
                sum += k*k*k;
            }
            if(sum == Integer.valueOf(str)){
                return true;
            }
            return false;
        }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 9月20日
  • 已采纳回答 9月12日
  • 创建了问题 9月12日

悬赏问题

  • ¥15 r语言蛋白组学相关问题
  • ¥15 Python时间序列如何拟合疏系数模型
  • ¥15 求学软件的前人们指明方向🥺
  • ¥50 如何增强飞上天的树莓派的热点信号强度,以使得笔记本可以在地面实现远程桌面连接
  • ¥20 双层网络上信息-疾病传播
  • ¥50 paddlepaddle pinn
  • ¥20 idea运行测试代码报错问题
  • ¥15 网络监控:网络故障告警通知
  • ¥15 django项目运行报编码错误
  • ¥15 STM32驱动继电器