Tips

【Java】プログラム作成練習問題 2

【Java】プログラム作成練習問題 2

前回より始まりました、こちらのシリーズ。第2回となります。

※この出題形式に関しては答えは1つではありません。
回答例はできるだけ複数載せるつもりですが、問題文の要件を満たしていれば正解として下さい。

問題

1から10までの和を求めるプログラムを作成せよ。
ただし、for文を用いること。

解答例1
[java] package exercise;

public class Exercise_002 {
public static void main(String[] args) {
int sum = 0;
for(int i = 1; i <= 10; i++) {
sum += i;
}
System.out.println(sum);
}
}
[/java]


解答例2
[java] package exercise;

public class Exercise_002 {
public static void main(String[] args) {
int sum = 0;
for(int i = 0; i < 11; i++) {
sum += i;
}
System.out.println(sum);
}
}
[/java]

変数iが0で初期化されているので、繰り返し処理が1回多くなってしまいます。
そして11未満という条件になっていますが、「i <= 10」と記述した方が「10まで」ということが伝わりやすいと思います。


間違い例

[java] package exercise;

public class Exercise_002 {
public static void main(String[] args) {
int sum; // 初期化されていない
for(int i = 0; i < 11; i++) {
sum += i;
}
System.out.println(sum);
}
}
[/java]

この例だとsumが初期化されないまま出力処理が実行される可能性があるためコンパイルエラーになります。
条件によってはfor文が1回も実行されず、sumの値が決まらないまま使用されるためです。


  

新連載はじまりました!新Java基礎 連載リンク

はじめてのJAVA 連載

Recent News

Recent Tips

Tag Search