【C#入門】入力した数値の因数(約数)をすべて表示するプログラムの作り方
この記事では、ユーザーが入力した数値の因数(約数)をすべて画面に表示するC#プログラムの作成方法を解説します。因数とは、ある整数を割り切ることができる整数のことです。たとえば12の因数は「1、2、3、4、6、12」になります。
ステップ1:数値を入力する
まず、コンソールから数値を入力します。Console.ReadLine() で読み取った文字列を、int.Parse() を使って整数型に変換して変数 n に格納します。
Console.WriteLine("Enter a Number");
n = int.Parse(Console.ReadLine());
ステップ2:因数を求めるロジック
次に、i = 1 から開始し、反復ごとに1ずつ増加させながらループ処理を行います。入力された数値 n を i で割った余り(剰余)が 0 になれば、その i は n の因数であるため、画面に出力します。剰余の計算には % 演算子を使用します。
for (i = 1; i <= n; i++) {
if (n % i == 0) {
Console.WriteLine(i);
}
}
このように、1から n までのすべての整数について割り切れるかどうかを順番に確認することで、因数を漏れなく見つけることができます。
サンプルコード
以下は、入力した数値の因数を求めて表示する完全なコードです。
using System;
namespace Demo {
class MyApplication {
static void Main(string[] args) {
int n, i;
Console.WriteLine("Enter a Number");
n = int.Parse(Console.ReadLine());
Console.WriteLine("Factors = ");
for (i = 1; i <= n; i++) {
if (n % i == 0) {
Console.WriteLine(i);
}
}
Console.ReadLine();
}
}
}
実行結果
たとえば「40」を入力した場合、プログラムは次のように因数を出力します。
Enter a Number 40 Factors = 1 2 4 5 8 10 20 40
まとめ
このプログラムでは、剰余演算子 % と for ループを組み合わせることで、シンプルに因数を求めることができます。計算量は O(n) となるため、小さな数値であれば十分実用的ですが、大きな数値を扱う場合は √n まで調べる方法に最適化することも可能です。
-
【Java入門】数値の約数をすべて表示するプログラムの書き方
この記事では、Javaを使って数値の約数(因数)を表示する方法について詳しく解説します。約数とは?約数とは、ある数を余りなく割り切ることができる数のことです。言い換えると、別の数を作るために掛け合わせる数とも表現できます。例えば、3と5を掛けると15になります。このとき、3と5は「15の約数」であると言えます。また、12の場合を見てみると、1・2・3・4・6・12はいずれも12を余りなく割り切れるため、これらはすべて12の約数です。最大の約数と最小の約数どのような数でも、最大の約数はその数自身であり、最小の約数は1になります。1はすべての整数の約数です。例えば、12の最大の約数と最小の約数は、
-
【Java】数値の累乗を計算するプログラムの書き方をわかりやすく解説
本記事では、Javaを使って数値の累乗(べき乗)を計算する方法を解説します。累乗の計算は、ループ処理を用いて元の数値を指数の回数分だけ繰り返し掛け合わせることで求められます。 以下に具体的な例を示します。 入力 入力値が次のとおりであるとします。 数値 : 4 指数値 : 5 出力 期待される出力は、45 の計算結果である次の値です。 計算結果は 1024 です アルゴリズム ステップ1 - 処理を開始する ステップ2 - 整数型の変数 my_input と my_exponent を宣言する ステップ3 - ユーザーから必要な値を読み込む、または値をあらかじめ定義する ステップ4 - whi