ホームページ >Java >&#&チュートリアル >10 ~ 100000 の間の水仙数値アルゴリズムの Java 実装の例

10 ~ 100000 の間の水仙数値アルゴリズムの Java 実装の例

黄舟
黄舟オリジナル
2017-10-18 10:16:052040ブラウズ

この記事では、10 から 100,000 の間の水仙番号を見つけるための Java アルゴリズムを主に紹介し、水仙番号の概念とそれに対応する Java アルゴリズムの実装スキルを例の形式で分析します。この記事では、10 ~ 100000 の間の水仙番号を見つけるための Java アルゴリズムについて説明します。参考のために皆さんと共有してください。詳細は次のとおりです。

水仙番号: 概念: 水仙番号は、n 桁の数 (n ≥ 3) を指します。各桁は n 倍です。べき乗の和はそれ自体に等しい。 (例: 1^3 + 5^3+ 3^3 = 153)

アルゴリズムのアイデア分析: このアルゴリズムは 2 つのステップで実行します。最初に、数値の桁数を見つける関数を作成します。 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;
  }
}

実行結果:

以上が10 ~ 100000 の間の水仙数値アルゴリズムの Java 実装の例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。