Javaプログラミング練習問題(制御構文の応用)

Java

こんにちは。ECF Tech
ブログ担当 Michiharu.Tです。

Javaプログラミング向け練習問題、今回は制御構文をまとめて出題です。プログラミング初学者には難しい問題もあるかもしれませんが、プログラミング学習にぜひお役立てください。

一般的なJavaの学習順序に沿ったテーマの一覧(※随時追加)は、こちらのリンクよりご確認頂けます。

Javaプログラミング

Javaのトピックスです。主に初心者向けにプログラミング学習ネタを提供していきます。

問題編

Q001

問題

  • キーボードで入力された値の階乗を求めるプログラムを記述してください。

※最大で10の階乗が求められれば良いこととします。

提供コード

実行結果

5を入力した場合

4を入力した場合

Q002

問題

  • 変数a,bを用い、aのb乗を求めて実行結果のように表示してください。

提供コード

実行結果

a = 3, b = 4の場合

a = 2, b = 8の場合

Q003

問題

次の仕様に基づいて、プログラムを作成してください。
(仕様)

  • キーボードから数値を1つ受け取ります(nとします)。
  • 四角をn個、横並びに表示します。
  • 四角の並びは全部で8段表示し、奇数段は□、偶数段は■を表示します。
    ※nの最大値は10個の想定で構いません。

提供コード

実行結果

ケース1

ケース2

Q004

問題

次の仕様に基づいて、プログラムを作成してください。
(仕様)

  • キーボードから数値を1つ受け取ります(nとします)。
  • 四角をn個、横並びに表示します。
  • 四角の並びは全部で8段表示します。
  • 実行結果のように、■と□を格子状に配置してください。
    ※nの最大値は10個の想定で構いません。

提供コード

実行結果

ケース1

ケース2

解答編

それでは解答編です。解答はあくまで一例となります。様々な作り方がありますので、実行結果と一致していれば特に問題ありません。

Quiz001

解説

  • 入力された値をfor文の終了条件に用います。
  • sumにかけ算の合計値を累積していきます。

Quiz002

解説

  • bの値をfor文の終了条件に用います。
  • sumにかけ算の合計値を累積していきます。

Quiz003

解説

  • 段ごとの四角を出す回数は、入力値に依存するためfor文でその数だけ表示します。そのため二重ループとなります。
  • 外側のforループが段を表していますので、iの値の偶奇を判断し四角の種類を変えます。

Quiz004

解説

  • Quiz003の応用型ですので、基本的な構成はかわりません。
  • 変数 wkは、奇数段目の時に 1、偶数段目の時に になります。四角の表示を分ける条件式 (j + wk) % 2により、奇数段の時は□で始まり、偶数段の時は■で始まります。

おわりに

いかがでしたでしょうか。ポイントになる解説を記載しておりますが、二重ループやネストを伴うプログラムは丁寧にプログラムの流れを追いかける地道な理解も求められます。たくさんのプログラムを書いてぜひ、モノにしてみてください。ひきつづき単元ごとに問題を徐々に増やしていきたいと思っていますので、よろしければぜひご活用ください。


合同会社イー・シー・エフでは、子ども向けプログラミングなどの教育講座を実施しています。プログラミング教室の案内や教育教材の情報、また関連するご相談・問い合わせにつきましては下記よりご確認ください。

ECFエデュケーション
キッズも大人も。沖縄からITのマナビを応援します
タイトルとURLをコピーしました