4−7 繰り返し処理(3)
-カウント用変数を使ったプログラム-


i は何回目の繰り返しかを数える変数です。これを文法用語では「制御変数」と呼びますが、
ここでは分かりやすく「カウント用変数」と呼びましょう。{ }の間を1回実行するたびに、i 1つずつ増えます。
この性質を利用すると、自然数の和などを簡単に求めることができます


基礎課題4−14
次のようなフレームのプログラムを作ってください。(最初の値は「0」にしておいて下さい。)

コンポーネント Name
上のテキストフィールド jTextFieldResult
下のボタン jButtonCalc

このプログラムで 1+2+3+4+5 を計算させて結果を表示させます。空欄を埋めてください。


基礎課題4−14の解答


基礎課題4−15
右のプログラムを改良して、5 までではなく任意の数までの和を求める
(どこまで足すかを指定できる)プログラムをforを使って作って下さい。

基礎課題4−15の解答


基礎課題4−16
2+4+6+8+… を計算するプログラムを、forを使って作って下さい。

基礎課題4−16の解答


基礎課題4−17
1+3+5+7+… を計算するプログラムを、forを使って作って下さい。(最初の値は「0」にしておきます。)

基礎課題4−17の解答


応用課題4−A
左のピラミッドは、1番上の段は石が 12=1 個、上から2段目は 22=4 個、上から3段目は 32=9個です。
このピラミッドの段数を入力し、石の個数を求めるプログラムを作りましょう。

個数のテキストフィールドは「0」にしておきます。

ピラミッドの段数を入力して「計算」ボタンを押したら
答を出力するプログラムを作って下さい。

応用課題4−Aの解答


応用課題4−B
右は、かけ算の九九表です。この全ての数の合計を求めるプログラムを作って下さい。
 1 2 3 4 5 6 7 8 9
 2 4 6 8 10 12 14 16 18
 3 6 9 12 15 18 21 24 27
 4 8 12 16 20 24 28 32 36
 5 10 15 20 25 30 35 40 45
 6 12 18 24 30 36 42 48 54
 7 14 21 28 35 42 49 56 63
 8 16 24 32 40 48 56 64 72
 9 18 27 36 45 54 63 72 81
ヒント 例えば、1行目(1番上の横の並び)の和を求めることはすでにできるはずです。これに、2行目、3行目の和を順次加えて行けばよいのです。

すると・・・

最終的には「4-2 ifの中のif」のように「forの中の for」という形になるはずです。

これができたら大したもの!


私の体験談

 この問題は微妙に難しいです。
今度はfor文の中のfor文だから・・・for文を2回使うことまでは、誰でもわかりますよね。

 縦と横の数字は9。 つまり・・・縦が1の時、横を1〜9まで掛ける。
そして、掛けた値を足していくと言う事になります。

応用課題4−Bの解答