解答は
- ホスト: earth.mlab.im.dendai.ac.jp
- ディレクトリ: /home/submit/1I-Computer1/[今日の日付]/[学籍番号]
に提出しなさい。ソースファイル (〜.java) のみを提出してください。 提出は gFTP 等の ftp ソフトを用いて行ってください。
いずれの問題も for 文を使った繰り返しのプログラムとして書きなさい。
int 型変数 n を用意し適当な値を代入しておく。 その整数の階乗 n! を求めるプログラムを書きなさい。 プログラム名は Factorial とする。
n! = 1 × 2 × 3 × … × n
である。例題の 1 つめのプログラムと同じ考え方で書けるはずである。
n ≧ 13 になると正しい値が求まらなくなるが、 これは int 型整数の扱える範囲を越えるためである。 今回はこれで仕方ないとする。
問題1の階乗を求めるプログラムを元に、
n! / ( m! * (n - m)! )
を計算して表示するプログラムを書きなさい。 あらかじめ適当な値を n と m に代入しておき、 まず、n と m の階乗を計算する。 階乗は for 文による繰り返しで計算すること。
なお、この式は、 n 個の中から m 個を選ぶ組み合わせの数 nCm を求めるものである。
プログラム名は PrimitiveCombination とする。
1 ≦ n ≦ 10 の整数 n について、 n , 2n, 3n を一覧表の形で出力するプログラムを書きなさい。 プログラム名は Power2n3n とする。
出力の最初の数行は次のようになるように作ること。
1: 2^1=2 3^1=3 2: 2^2=4 3^2=9 3: 2^3=8 3^3=27 4: 2^4=16 3^4=81 ...
等差数列の項と和を求めるプログラムを書きなさい。
初項 c 、項差 d の等差数列を考えると、 i番目の項 ai と、その項までの和 si は以下のような漸化式で求めることができる。
ai = ai-1 + d
si = si-1 + ai
初項 c と公差 d をあらかじめプログラム中に定義しておき、 先頭から第 10 項までの ai と si を出力するようなプログラムにすること。 たとえば、初項が 10 、公差が 5 だった場合、出力の最初の数行は次のようになれば良い。
ArithmeticalProgression (c=10, d=5) 1: a=10 s=10 2: a=15 s=25 3: a=20 s=45 4: a=25 s=70 5: a=30 s=100 ...
プログラム名は ArithmeticalProgression とする。