C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#を使って1から1000までのアームストロング数をすべて表示する方法

アームストロング数とは、各桁の数字の3乗の合計が元の数値と等しくなる特別な数のことです。代表的な例が「153」で、1³ + 5³ + 3³ = 1 + 125 + 27 = 153 となり、確かに元の数値と一致します。

ここでは、C#のwhileループを使用して、1から1000までの範囲に含まれるすべてのアームストロング数を求めて表示する方法を解説します。

手順1:whileループで範囲を指定する

まず、1から1000までの数値を順番に処理するために、whileループを用意します。変数valは現在チェック中の数値を表します。

while (val <= 1000) {
   // 処理内容
}

手順2:各桁の数字を取り出す

次に、whileループの中で、数値の一の位・十の位・百の位をそれぞれ計算して取り出します。10や100で割った商と余りを組み合わせることで、各桁の値を求められます。

d1 = val - ((val / 10) * 10);   // 一の位
d2 = (val / 10) - ((val / 100) * 10);   // 十の位
d3 = (val / 100) - ((val / 1000) * 10);   // 百の位

手順3:各桁の3乗の合計を計算して判定する

アームストロング数の判定では、取り出した各桁の数字を3乗し、その合計を求めます。この合計が元の数値と一致すれば、その数はアームストロング数です。

res = (d1 * d1 * d1) + (d2 * d2 * d2) + (d3 * d3 * d3);
if (res == val) {
   Console.WriteLine(temp);
}

実行結果の例

このプログラムを実行すると、1から1000までの範囲に含まれるアームストロング数として「1」「153」「370」「371」「407」が出力されます。たとえば153の場合、1³ + 5³ + 3³ = 153 となるため、条件を満たすアームストロング数であることが確認できます。

  1. Pythonで指定した範囲内のすべての素数を出力する方法

    素数とは何か素数とは、1とその数自身以外の正の整数では割り切れない数のことです。たとえば、2、3、5、7、11などが素数に該当します。ある数が素数かどうかを判定するには、その数自身と1を除く、1からその数までの間にあるすべての整数で割り切れるかどうかを確認する必要があります。Pythonで範囲内の素数を求める基本的な考え方以下のプログラムは、1から100までの間にあるすべての素数を出力します。仕組みは次のとおりです。外側のループで、判定対象となる範囲内の各数値を順番に生成します。内側のループで、2からその数値の手前までの整数を使い、剰余演算子「%」で割り切れるかどうかを順にチェックします。一度

  2. Pythonでフィボナッチ数列を出力する方法【初心者向けサンプルコード付き】

    フィボナッチ数列とは、各項が直前の2つの数の和になるという性質を持つ数列です。「1, 1, 2, 3, 5, 8, 13…」のように数字が並んでいくのが特徴です。この種の数列は、Pythonの繰り返し処理(ループ文)を使えば簡単に生成できます。 フィボナッチ数列を出力するサンプルコード 以下は、while文を使ってフィボナッチ数列の最初の10個の数値を出力するPythonプログラムです。 x=0 y=1 fibo=0 while fibo<10: fibo=fibo+1 z=x+y print(z) x,y=y,z 実行結果 上記のプログラムを実行すると、