Javaプログラミング基礎

演習問題

解答は

に提出しなさい。ソースファイル (〜.java) のみを提出。 提出は gFTP 等の ftp ソフトを用いて行ってください。

問題1

2 つの double 型変数用意し、適当な値を入れておく。 その数自身と、和、差、積、商を表示するプログラムを書きなさい。 プログラム名は ASMD とする。

値を変化させてみて、誤差の様子を観察するとよい。 誤差の様子を見るためには 20 桁以上の数字で出力する必要がある。 例えば、 0.123456789012345678901 が正しく表現できないこと、 非常に近い 2 つの数の差は誤差が大きいことなどが分かるはずである。

問題2

3 のべき乗 3k を k=1 から k=40 の範囲で すべて表示するプログラムを書きなさい。 プログラム名は Power3 とする。 べきごとに行を分けて出力すること。

整数型 int を用いた計算結果と 浮動小数点型 double を用いた計算結果を対照させて表示するようにすること。 また、 int 型の場合何乗でオーバフローが発生するか、 double 型の場合何乗で誤差が発生するかを確かめなさい。

(3のべき乗の値は各桁の和が3の倍数となるはずである (例: 33 = 27 → 2 + 7 = 9 → 9 は 3 の倍数) 。 そうならない場合、誤差が生じていると判別できる)

問題3

あなたは大学を卒業後、投資家となり、 資金 1,000 万円をある率で運用しようとしているとする。

元本 1000 万円を以下の3とおりの年利による複利で運用したとき、 10 年後の元利合計はそれぞれいくらになるか表示するプログラムを書きなさい。 プログラム名は Compound とする。

なお、元利合計とは元本と利息の合計のことである。

  1. 不動産投資 8%
  2. 国内定期預金 0.05%
  3. 株式投資失敗で元本割れ -2%

複利計算の場合、 1 年ごとに利息が元金に加算されていく。 すなわち、例えば、 不動産投資での 1 年目の利息は 1000万円 × 8% = 80 万円となり、 元金と利息の合計 1000 万円 + 80 万円 = 1080 万円が 1 年目の元利合計である。 同様にして 2 年目は 1080万円 × 8% = 86.4 万円が利息であり、 1080万円 + 86.4 万円 = 1166.4 万円が 2 年目の元利合計となる。 これを繰り返すことにより、 10 年後の元利合計を求めることができる。

なお、表示の際に有効数字の桁数は気にしなくてよいものとする。