情報科学概論(再履修)
再履修クラス 宿題 2004.12.10

Back


宿題においても, 解答用紙 を使用する.この書式で解答を提出すること.

設問

1から10までの自然数nを乱数で発生させ,1からnまでの数の階乗 の和を求めるスクリプトを作成せよ.結果の出力は,例えばnが10になっ た場合に,次のようになるものとする.

1! + 2! + 3! + 4! + 5! + 6! + 7! + 8! + 9! + 10! = 4037913


解答例

sum = 0

n = rand(10) + 1

for i in 1..(n-1)
  printf "%d! + ", i
end

for i in 1..n
  fact = 1

  for j in 1..i
    fact *= j
  end

  sum += fact
end

printf "%d! = %d\n", n, sum


Back