欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Java学习-打印1-1000以内的水仙花数代码实例

程序员文章站 2024-02-23 08:09:46
水仙花数:水仙花数是三位数,它的各位数字的立方和等于这个三位数本身,例如:370=33+73+00;371=33+73+13,370、371就是一个水仙花数 注意:要判断...

水仙花数:水仙花数是三位数,它的各位数字的立方和等于这个三位数本身,例如:370=33+73+00;371=33+73+13,370、371就是一个水仙花数

注意:要判断一个三位数是不是水仙花数,得先取得这个三位数的的个位,十位和百位

public class mytest {
  public static void main(string[] args) {
/*    打印1-1000的水仙花数
    水仙花数:例如  153=1*1*1+5*5*5+3*3*3*/

    //定义标记,水仙花数起始值位0
    int count =0;
    //要找出1000以内的水仙花数,先要遍历其每个数字;因为水仙花数是三位数所以从100开始
    for (int i = 100; i < 1000; i++) {
      //取出个位
      int g = i%10;
      //取出十位
      int s = i/10%10;
      //取出百位
      int b = i/100;
      //判断每个位上的立方和是否等于它自己,如果是则打印出该数字
      if (g*g*g+s*s*s+b*b*b==i){
        //如果是水仙花数,count加一
        count++;
        system.out.println(i);
      }
    }
    system.out.println("1000以内水仙花数的个数:"+count);
  }
}

输出结果:

153
370
371
407

1000以内水仙花数的个数:4

以上所述是小编给大家介绍的java打印1-1000以内的水仙花数详解整合,希望对大家有所帮助