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

Java打印出所有的水仙花数的实现代码

程序员文章站 2024-03-07 08:10:02
题目:打印出所有的 "水仙花数 ",所谓 "水仙花数 "是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个 "水仙花数 ",因为153=1的三次方+5的三次方...

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

程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。

程序设计:

public class exp2{
  public static void main(string args[]){
    int i=0;
    math mymath = new math();
    for(i=100;i<=999;i++)
      if(mymath.shuixianhua(i)==true)
      system.out.println(i);
  }
}
class math
{
  public int f(int x)
  {
    if(x==1 || x==2)
      return 1;
    else
      return f(x-1)+f(x-2);
  }
  public boolean iszhishu(int x)
  {
    for(int i=2;i<=x/2;i++)
      if (x % 2==0 )
       return false;
    return true;
  }
  public boolean shuixianhua(int x)
  {
    int i=0,j=0,k=0;
    i=x / 100;
    j=(x % 100) /10;
    k=x % 10;
    if(x==i*i*i+j*j*j+k*k*k)
     return true;
    else
     return false;
   
  }
}

更多内容请大家关注之前发布的文章。