こんにちは。ECF代表のヒガです。
本記事では初心者向けアルゴリズムの演習問題を紹介しています。日頃のプログラミング学習にご活用ください。
はじめに
アルゴリズムとは、コンピューターに行わせる計算手順のことです。自在にプログラムを作るには、プログラム言語の文法の知識とともにアルゴリズムの考え方を身につけることが必要になります。
アルゴリズム技法習得の肝は「繰り返し」の活用です。この連載では、簡単な題材で繰り返しを使うアルゴリズムの基本パターンを練習していきます。
演習問題の一覧や勉強スタイルについてのアドバイスはこちらからどうぞ。
Q004 指定した数だけ縦に並べる(変数と繰り返し)
文字「★」を縦に並べて表示させてください。ただし、並べる数はプログラムの先頭で変数に代入することで指定してください。
繰り返しの回数に「10」を指定した場合の実行例は次のとおりです。
ヒント
繰り返しの条件には、数を指定するために準備した変数を活用します。
解答例と解説
考え方
まず最初に「何を繰り返す」かを考えます。今回の場合は
- 文字'★'を表示する(改行有り)
を繰り返すことになります。
今回のポイントは「繰り返し回数を事前に指定する」というところです。繰り返しループの前に変数を用意し、そこに繰り返し回数を代入しておきます
箇条書きでまとめると、
- 繰り返し回数を指定する(変数に代入する)
- 次の動作を指定回数分繰り返す
- 文字'★'を表示する
- 改行する
という流れになります。
フローチャート例
Javaでの実装例
public class Q004 { public static void main(String[] args) { int n = 10; // 繰り返しの数 for (int i = 0; i < n; i++) { System.out.println('★'); } } }
例えばQ001やQ002で行った5回の繰り返しは、for文で「0から始め、5より小さい間(つまり4まで)」繰り返すという書き方をしました。今回はプログラムの先頭で宣言・初期値を代入した変数nを使って条件を指定することになります。つまり、for文で「0から始め、nより小さい間(つまりn-1まで)」繰り返すという書き方になります。
そして、Q003と違い今回は改行有りです。println(〜)メソッドを使う、またはprint(〜)メソッドとprintln()メソッド(引数無しバージョン)を併用する、のいずれかで実装するとよいでしょう。
おわりに
「設定値はプログラムの先頭にまとめて書いておく」という工夫、Q003でのポイントが今回意識できたでしょうか。実践でもしっかり活かせるようにしましょう。
次回はこちらです。
合同会社イー・シー・エフでは、子ども向けプログラミングなどの教育講座を実施しています。プログラミング教室の案内や教育教材の情報、また関連するご相談・問い合わせにつきましては下記よりご確認ください。