Java如何求水仙花数

小编给大家分享一下Java如何求水仙花数,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

为邳州等地区用户提供了全套网页设计制作服务,及邳州网站建设行业解决方案。主营业务为成都网站建设、成都网站制作、邳州网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

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

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

普通for循环:

public class Daffodil {
  public static void main(String[] args) {
    int count = 0;    //定义水仙花数的个数
    for(int i=100;i<=10000;i++){ //水仙花数范围
      int b = i/100;    //取得百位数
      int s = (i-100*b)/10;    //取得十位数
      int g = (i-s*10-b*100);    //取得个位数
      
      if(i==g*g*g+s*s*s+b*b*b){ //水仙花数判定
        System.out.print(i+" ");  //输出符合条件的数
        count++;
      }
    }
    System.out.println();    //换行
    System.out.println("水仙花数总共有"+count+"个");  //输出水仙花数的总数
  }
}

while循环:

public class Daffodil {
  public static void main(String args[]){
    int i=100;
    int count=0; //定义水仙花数的个数
    while(i<10000){
      int b = i/100;    //取得百位数
      int s = (i-100*b)/10;    //取得十位数
      int g = (i-s*10-b*100);    //取得个位数
      
      if(i==g*g*g+s*s*s+b*b*b){ //水仙花数判定
        System.out.print(i+" ");  //输出符合条件的数
        count++;
      }
      i+=1;
    }
    System.out.println();
    System.out.println("水仙花数总共有"+count+"个");  //输出水仙花数的总数
  }
}

do-while循环:

public class Daffodil {
  public static void main(String args[]){
    int i=100;
    int count=0; //定义水仙花数的个数
    do{
      i+=1;
      int b = i/100;    //取得百位数
      int s = (i-100*b)/10;    //取得十位数
      int g = (i-s*10-b*100);    //取得个位数
      
      if(i==g*g*g+s*s*s+b*b*b){ //水仙花数判定
        System.out.print(i+" ");  //输出符合条件的数
        count++;
      }
    }while(i<10000);
    System.out.println();
    System.out.println("水仙花数总共有"+count+"个");  //输出水仙花数的总数
  }
}

以上是“Java如何求水仙花数”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!


分享标题:Java如何求水仙花数
地址分享:http://csdahua.cn/article/jodjph.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流