情報科学概論(1年生)
Aクラス 小テスト 2005.01.24

Back


以下の設問の解答は所定の解答用紙に記入 して添付書類として提出して下さい.その際に,ファイル名 を必ず自分にあったものに変更することと学生番号と氏名を記入すること を忘れないようにして下さい.

提出は合図があるまで勝手にしないこと!指示に従って 作業を行うこと.

設問

1から100までの範囲で乱数(整数)を発生させる.最初に発生した乱数よりも 小さい数になるような乱数を次に発生させる.最終的に,1が発生 した段階で乱数の発生を終える.そのときに発生させた乱数を要素として持つ配 列,すなわち,だんだんと値が小さくなり,配列の最後の要素が1になるようなスクリプトを作成せよ.


解答例

ary = []

ary[0] = rand(100) + 1

i = 0

while ary[i] > 1 
  i += 1
  ary[i] = rand(ary[i-1]-1) + 1
end

p ary


情報科学概論(1年生)
Bクラス 小テスト 2005.01.24


以下の設問の解答は所定の解答用紙に記入 して添付書類として提出して下さい.その際に,ファイル名 を必ず自分にあったものに変更することと学生番号と氏名を記入すること を忘れないようにして下さい.

提出は合図があるまで勝手にしないこと!指示に従って 作業を行うこと.

設問

1から100までの範囲で乱数(整数)を発生させる.最初に発生した乱数よりも 大きい数になるような乱数を次に発生させる.最終的に,100が発生 した段階で乱数の発生を終える.そのときに発生させた乱数を要素として持つ配 列,すなわち,だんだんと値が大きくなり,配列の最後の要素が100になるようなスクリプトを作成せよ.


解答例

ary = []

ary[0] = rand(100) + 1

i = 0

while ary[i] < 100
  i += 1
  ary[i] = rand(100-ary[i-1]) + ary[i-1] + 1
end

p ary


Back