欢迎来到代码驿站!

JAVA代码

当前位置:首页 > 软件编程 > JAVA代码

Java求10到100000之间的水仙花数算法示例

时间:2020-12-28 12:51:18|栏目:JAVA代码|点击:

本文实例讲述了Java求10到100000之间的水仙花数算法。分享给大家供大家参考,具体如下:

水仙花数:

概念:水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。(例如:1^3 + 5^3+ 3^3 = 153)

算法思路分析:这个算法我们分两个步骤来进行;第一:我们做一个求一个数的位数的函数;第二:我们通过调用此函数来进行10到100000之间素数的计算!

下面给出具体的代码(仅供参考):

package javastudy;
public class Testit1 {
  public static void main(String[] args) {
    for (int number = 100; number <= 100000; number++) { //求10到10000之间所有的素数,一个大的循环
      int temp = number; //这步代码是为了让Getlength(number)不变
      int sum = 0;
      for (int i = 0; i < Getlength(number); i++) {
        sum += Math.pow(temp % 10, Getlength(number)); //次方和相加
        temp = temp / 10;
      }
      if (sum == number) { //判断是否相等
        System.out.print(number+" ");
      }
    }
  }
  static int Getlength(int number) { //这个函数是为了求一个数字的位数
    int i = 0;
    while (number / 10 > 0) {
      i++;
      number /= 10;
    }
    return i + 1;
  }
}

运行结果:

更多关于java算法相关内容感兴趣的读者可查看本站专题:《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总

希望本文所述对大家java程序设计有所帮助。

上一篇:Java中异或的深入讲解

栏    目:JAVA代码

下一篇:eclipse springboot工程打war包方法及再Tomcat中运行的方法

本文标题:Java求10到100000之间的水仙花数算法示例

本文地址:http://www.codeinn.net/misctech/37708.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有