情報処理・2000年度夏学期

第11,12 回課題: プログラミング


以下の課題 1〜4 のうち 1 つ以上のプログラムを Java 言語で作成し、実行せよ。

なお、各課題について

  1. プログラムの説明 (課題をプログラムにする際の考え方)
  2. 原始プログラム
  3. 実行結果

を必ず書くこと。

レポートは、ユーザ情報発信用WWWサーバを用いて
http://user.ecc.u-tokyo.ac.jp/~gXXXXXX/info-11.html
という URL に置くこと。

期限: 8月11日(金)

課題1. 倍数はいくつ?

自分の学生証番号を x とする。1 から x までの整数のうち、7の倍数がいくつあるかを数え、表示するプログラムを作り、実行せよ。
(注: 表示するのは個数である。)

課題2. 逆向き直角三角形

下のように、5×5の大きさの逆向きの直角三角形を表示するプログラムを作り、実行せよ。その際、

を定義して用いること。
....*
...**
..***
.****
*****

課題3. 素因数分解

ある数 x を素因数分解するプログラムを作り、自分の学生証番号を素因数分解せよ。

ヒント: x の約数を 2, 3, ... の順に探してゆき、約数が見つかったら x をその約数で割ってゆく。最終的に x が 1 になれば終りである。約数を探す際には 12=2×2×3 のように、同じ約数が2回以上現われる場合に注意する必要がある。

課題4. 二等辺三角形

高さ x, 底辺の長さ 2x-1 の二等辺三角形を表示するメソッドを定義せよ。それを用いて、下のように x が 5, 9, 13 の三角形を表示させるプログラムを作り、実行せよ。

(7月18日追加:「高さx,底辺の長さ2x+1の……」と書いていましたが、上のように訂正します。)

....*
...***
..*****
.*******
*********

........*
.......***
......*****
.....*******
....*********
...***********
..*************
.***************
*****************

............*
...........***
..........*****
.........*******
........*********
.......***********
......*************
.....***************
....*****************
...*******************
..*********************
.***********************
*************************


Hidehiko Masuhara, June 2000