Java编程练习之:水仙花数

时间:2024-11-08 19:25:34

文章目录

  • 1. 题目
  • 2. 思路
  • 3. 代码
  • 4.运行结果

1. 题目

打印出所有的 "水仙花数 ",所谓 "水仙花数 "是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个 "水仙花数 ",因为153=1的三次方+5的三次方+3的三次方。

2. 思路

这道题的关键是分别得到:个位、十位数、和百位的数字。
例如 512 这个数字:

  • 个位:512%10 = 2
  • 十位:512 %100 = 12, 12 / 10 = 1
  • 百位:512 / 100 = 5

3. 代码

public class narcissistic_number {
    public static void main(String[] args) {
        for (int i = 0; i < 1000; i++) {
           int h = i / 100;
           int t = i % 100 / 10;
           int s = i % 10 ;
           if (h*h*h+t*t*t+s*s*s==i){
               System.out.println(i+"是水仙花数");
           }
        }
    }
}

4.运行结果

在这里插入图片描述