この記事では、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 サイトの他の関連記事を参照してください。