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

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 wifi 图标不见了 不知道怎么办 上不了网 变成小地球了
  • ¥50 STM32单片机传感器读取错误
  • ¥50 power BI 从Mysql服务器导入数据,但连接进去后显示表无数据
  • ¥15 (关键词-阻抗匹配,HFSS,RFID标签)
  • ¥50 sft下载大文阻塞卡死
  • ¥15 机器人轨迹规划相关问题
  • ¥15 word样式右侧翻页键消失
  • ¥15 springboot+vue 集成keycloak sso到阿里云
  • ¥15 win7系统进入桌面过一秒后突然黑屏
  • ¥30 backtrader对于期货交易的现金和资产计算的问题