Java でアームストロング数値を確認するにはどうすればよいですか?

Java Deamusutorongu Shu Zhiwo Que Rensurunihadousurebayoidesuka



アームストロング数 」は、数値パターンと数学的性質についての洞察を提供します。数論の概念を理解し、数内の自己参照関係を探索するのに役立ちます。さらに、データやユーザー入力の正確性を確保するのにも役立ちます。入力の整合性が重要な場合に役立ちます。

このブログは、提供されたデータのアームストロング番号を見つけるのに役立ちます。







Javaでアームストロング数値を確認するにはどうすればよいですか?

アームストロング数 」をチェックして、特定の数学的特性を満たす数値を特定します。指定された値が、指定された値の整数の合計数で累乗した独自の整数の加算と同じである場合。



ここで、理解を深めるためにいくつかの例を見てみましょう。



例 1: アームストロング番号の特定





プログラムにアクセスして、提供された番号がアームストロング番号であるかどうかを確認します。

java.util.Scannerをインポートします。
// 必要なユーティリティをインポートしています。
パブリック クラス ArmstrongChecker {
パブリック静的ボイドメイン ( [ 引数 )
// メインを宣言する ( ) 方法
{
スキャナーのデモテスト = 新しいスキャナー ( システムイン ) ;
システム出力印刷 ( 「確認する番号を入力してください:」 ) ;
int numEle = demoTest.nextInt ( ) ;

int origNum = numEle;
整数の数字 = 0 ;
その間 ( 元の番号 = 0 ) {
元の番号 / = 10 ;
数字++;
}

整数 = 0 ;
int temp = numEle;
ために ( int i = 0 ;私 < 数字。 i++ ) {
整数 あなた = 温度 % 10 ;
+= Math.pow ( あなた 、数字 ) ;
温度 / = 10 ;
}

もしも ( == 名前 ) {
System.out.println ( 名前 + 「はアームストロングの数字です。」 ) ;
} それ以外 {
System.out.println ( 名前 + 「アームストロング数の条件を満たしていません。」 ) ;
}
}
}


上記のコードの説明:



    • まず、「」のオブジェクトです。 スキャナー 」クラスは、「」を使用してエンドユーザーから整数を取得するために作成されます。 nextInt() ” メソッドを実行し、取得したデータを “” という名前の変数に格納します。 名前 ”。
    • 次に、この取得した値を「」というint型変数に代入します。 元の番号 ” そして、” という名前の変数を初期化します。 数字 ' と ' 0 ”。
    • そうして ' その間 origNum を 10 で割って、origNum が 0 になるまでそのたびに変数の数字をインクリメントすることを繰り返すループを使用します。
    • その後、変数「」を宣言します。 ”を選択し、”の値を設定します。 名前 ”へ” 温度 ' 変数。そして「」を活用します。 ために ” まで繰り返すループ。 数字 ” 変数値。
    • そして、「for」ループの各反復で、「」の最後の桁が 温度 「モジュラス演算子を使用して抽出され、新しい変数「」に格納されます。 あなた ”。次に、その数字の 3 乗が「」に追加されます。 ” Math.pow() メソッドを使用して変数を作成します。
    • 結局のところ、「 もし/そうでなければ 」ステートメントは、計算された合計がユーザーによって提供された元の数値と等しいかどうかを判断するために利用されます。両方の値が等しい場合、指定された数値はアームストロング数値となり、その逆も同様です。

コンパイル後:


出力は、指定された数値がアームストロング数値であることを示しています。

例 2: 指定された制限内で存在するすべてのアームストロング番号を検索する

指定された値または制限に対するアームストロング数値をすべて検索するには、以下のコードにアクセスしてください。

java.util.Scannerをインポートします。
java.lang.Mathをインポートします。

パブリック クラス ArmstsrongNumberExample
{
静的ブール値 isArmsNum ( int j ) {
内部バフ、 歌うディグ = 0 終わり = 0 計算する = 0 ;
バフ =j;
その間 ( バフ > 0 ) {
バフ=バフ / 10 ;
シングディグ++;
}
バフ = j;
その間 ( バフ > 0 )
{
終了 = バフ % 10 ;
計算 += ( Math.pow ( 終わる、歌う、掘る ) ) ;
バフ=バフ / 10 ;
}
もしも ( j ==計算 )
戻る 真実 ;
それ以外 戻る 間違い ;
}
パブリック静的ボイドメイン ( 文字列引数 [ )
// メインを宣言する ( ) 方法
{
int proNum;
スキャナー sc = 新しいスキャナー ( システムイン ) ;
システム出力印刷 ( '上限を入力:' ) ;
プロナンバー =sc.nextInt ( ) ;
System.out.println ( 「指定された制限までのアームストロング数」 + プロナンバー + ' それは: ' ) ;
ために ( 整数 k = 0 ; k < =forNum; k++ )
もしも ( isArmsNum ( k ) )
システム出力印刷 ( k+ '、' ) ;
}
}


上記のコードの説明:

    • まず、型が「 buff 」、「singDig」、「end」、「calc」という複数の変数を宣言します。 整数 ”、” という名前のブール型メソッド内 isArmsNum() ”。 「」という名前の変数に割り当てられたパラメータを受け取ります。 バフ ”。
    • 次に、「 その間 ” バフ値が” に達するまで反復するループが宣言されています。 0 ”。その後、「 バフ ” は による係数です 10 ” を指定すると、指定された値から最後の桁が削除され、” が増分されます。 歌うディグ ' 変数。
    • そうして ' その間 ” ループは” 上で再度利用されます。 バフ ” 変数を使用して最後の桁を抽出します。数字の 3 乗は、「」を利用して計算されます。 算数。 捕虜() 」メソッドを「」に追加しました。 計算する ' 変数。
    • さて、「 もしも ”ステートメントは、”で計算された値が正しいかどうかを確認するために利用されます。 計算する ” 変数は、エンドユーザーによって提供された値と等しいかどうか。また、それに応じてメッセージを表示します。
    • その後、エンドユーザーからの入力は「」を使用して取得されます。 スキャナー 「」のユーティリティ 主要() ' 方法。
    • 結局のところ、「 ために ” ループが利用され、指定された値が得られるまで反復されます。各反復は “” と呼ばれます。 isArmsNum() ' 方法。このメソッドは、指定された値に達するまですべての値を受け取り、アームストロング数の各値をチェックします。

コンパイル後:


出力には、指定された値「」までのすべてのアームストロング数値が表示されます。 370 ' この場合。

結論

アームストロング数値を見つけるには、まず、指定された数値に含まれる桁を数えます。次に、モジュラス演算と除算演算を使用して、指定された数値から各桁を 1 つずつ抽出します。次に、値の各整数を整数の合計数で累乗し、結果の値を新しい変数に追加します。最後に、取得した変数値が指定された数値と等しいかどうかを確認します。等しい場合、指定された数値はアームストロング数値であり、そうでない場合はそうではありません。