Java – 1から100までの偶数の和をwhile文で求める方法
Javaで1から100までの偶数の和を求めるには、while
文を使用して条件を満たす数値を繰り返し加算します。
初期値を2(最初の偶数)に設定し、100以下である間にループを実行します。
各ループで現在の値を合計に加算し、次の偶数に進むために2を加えます。
while文を使った偶数の和の計算とは
Javaにおいて、while文は条件が真である限り繰り返し処理を行う制御構文です。
この特性を利用して、1から100までの偶数の和を求めることができます。
偶数は2で割り切れる数であり、1から100までの偶数は2, 4, 6, …, 100です。
これらの数をすべて足し合わせることで、偶数の和を求めることができます。
以下に、while文を使用して1から100までの偶数の和を計算するサンプルコードを示します。
public class App {
public static void main(String[] args) {
int sum = 0; // 偶数の和を格納する変数
int number = 2; // 偶数の初期値
// 1から100までの偶数を足し合わせる
while (number <= 100) {
sum += number; // 偶数を和に加える
number += 2; // 次の偶数に進む
}
// 結果を出力する
System.out.println("1から100までの偶数の和は: " + sum);
}
}
1から100までの偶数の和は: 2550
このコードでは、まず偶数の初期値を2に設定し、while文を使って100以下の偶数をすべて足し合わせています。
条件が満たされる限り、偶数を和に加え、次の偶数に進む処理を繰り返します。
最終的に、計算された偶数の和が出力されます。
より効率的な書き方を考える
while文を使用して偶数の和を計算する方法はシンプルで理解しやすいですが、他の方法を用いることで、より効率的に処理を行うことができます。
ここでは、for文を使った方法や、数学的なアプローチを紹介します。
for文を使用した方法
for文を使うことで、ループの初期化、条件、更新を一行で記述でき、コードがよりコンパクトになります。
以下は、for文を使用して1から100までの偶数の和を計算するサンプルコードです。
public class App {
public static void main(String[] args) {
int sum = 0; // 偶数の和を格納する変数
// for文を使用して偶数の和を計算
for (int number = 2; number <= 100; number += 2) {
sum += number; // 偶数を和に加える
}
// 結果を出力する
System.out.println("1から100までの偶数の和は: " + sum);
}
}
1から100までの偶数の和は: 2550
数学的アプローチ
1から100までの偶数の和は、等差数列の和の公式を使って計算することもできます。
偶数の数列は2, 4, 6, …, 100であり、最初の項が2、最後の項が100、項数が50です。
等差数列の和の公式は次のようになります。
ここで、
これを用いて、偶数の和を計算するサンプルコードは以下の通りです。
public class App {
public static void main(String[] args) {
int firstTerm = 2; // 初項
int lastTerm = 100; // 末項
int numberOfTerms = 50; // 項数
// 等差数列の和を計算
int sum = (numberOfTerms / 2) * (firstTerm + lastTerm);
// 結果を出力する
System.out.println("1から100までの偶数の和は: " + sum);
}
}
1から100までの偶数の和は: 2550
このように、for文や数学的アプローチを用いることで、より効率的に偶数の和を計算することができます。
特に数学的アプローチは、計算量が少なく、処理速度が向上するため、大規模なデータに対しても有効です。
応用例:範囲や条件を変更する
1から100までの偶数の和を求める基本的な方法を学んだ後、次は範囲や条件を変更して、さまざまなケースに対応できるようにしてみましょう。
ここでは、特定の範囲内の偶数の和を求める方法や、条件を追加して計算する方法を紹介します。
特定の範囲内の偶数の和を求める
例えば、10から50までの偶数の和を求める場合、while文やfor文を使って範囲を指定することができます。
以下は、for文を使用したサンプルコードです。
public class App {
public static void main(String[] args) {
int sum = 0; // 偶数の和を格納する変数
// 10から50までの偶数を計算
for (int number = 10; number <= 50; number += 2) {
sum += number; // 偶数を和に加える
}
// 結果を出力する
System.out.println("10から50までの偶数の和は: " + sum);
}
}
10から50までの偶数の和は: 640
条件を追加して偶数の和を求める
次に、特定の条件を追加して偶数の和を求める方法を考えます。
例えば、1から100までの偶数の中で、20より大きい偶数の和を求める場合、if文を使って条件を追加することができます。
以下は、そのサンプルコードです。
public class App {
public static void main(String[] args) {
int sum = 0; // 偶数の和を格納する変数
// 1から100までの偶数の中で20より大きい偶数を計算
for (int number = 2; number <= 100; number += 2) {
if (number > 20) { // 20より大きい場合
sum += number; // 偶数を和に加える
}
}
// 結果を出力する
System.out.println("20より大きい偶数の和は: " + sum);
}
}
20より大きい偶数の和は: 2040
複数の条件を組み合わせる
さらに、複数の条件を組み合わせて、特定の偶数の和を求めることも可能です。
例えば、1から100までの偶数の中で、30より大きく、かつ50より小さい偶数の和を求める場合、以下のように記述できます。
public class App {
public static void main(String[] args) {
int sum = 0; // 偶数の和を格納する変数
// 1から100までの偶数の中で30より大きく、50より小さい偶数を計算
for (int number = 2; number <= 100; number += 2) {
if (number > 30 && number < 50) { // 複数の条件
sum += number; // 偶数を和に加える
}
}
// 結果を出力する
System.out.println("30より大きく、50より小さい偶数の和は: " + sum);
}
}
30より大きく、50より小さい偶数の和は: 120
このように、範囲や条件を変更することで、さまざまなケースに対応した偶数の和を求めることができます。
これにより、プログラムの柔軟性が向上し、実際のアプリケーションにおいても役立つスキルとなります。
まとめ
この記事では、Javaを使用して1から100までの偶数の和を求める方法について詳しく解説しました。
while文やfor文を使った基本的なアプローチに加え、特定の範囲や条件を変更することで、より柔軟なプログラムを書く方法も紹介しました。
これらの知識を活用して、実際のプログラミングにおいてさまざまな問題に対応できるように挑戦してみてください。