2005年 情報検索 試験問題 2005年7月13日(水)
出題者: 神田、西村、広瀬 持ち込み: 教科書、ノート、電卓は可、PCは不可。
解答用紙にはクラス欄にクラスと担当者名を書き、表紙には1,2,3を、裏面には
4,5,6を解答せよ。問題用紙は持ち帰ってよい。
1. 以下の計算をした結果を10進数、2進数、16進数で示せ。
なお、先頭に付加してある0xは16進数を、0bは2進数を表して
いるものとする。何もついていない数は10進数である。
(1) 0x39 + 0x4a (2) 0b101×8
2. 次の数式を Ruby の文法で表せ
(1) a÷b
(2) 1+2×3
(3) a{b+a(4-c)}
(4) 2
z (zの6乗)
(5) 1
-------------
1 1
--- + ---
a b
3. 以下のプログラムは、標準入力から読み込んだ2つの数を比較し、
大きい方から小さい方を引いた数を求めるものである。空欄を埋めよ。
a = [ ア ]
b = [ イ ]
if [ ウ ] then
x = b - a
else
[ エ ]
end
printf "x=[ オ ]\n", [ カ ]
4. Rubyプログラムにリスト1に示すテキストを与えた。全ての行に対し以下の各設問
にある正規表現で照合を行なった場合、マッチする行を全て示せ。なお、リスト
1の行頭にある数字とコロンは行番号を示すために加えたものでテキストそのもの
には含まれない。
解答例:
正規表現 解答
/-/ 4, 7
[[[ リスト1 ]]]-------------------------------------------------------
1: 20050417:
2: postinstall(8) was moved from /etc to /usr/sbin and made part
3: of the "base" set, to make it easier to invoke after an
4: upgrade.
5:
6: 20050211:
7: Fixes to tools/Makefile.gnuhost may cause UPDATE=1 builds in
8: some of the cross tools to fail if they use configure. Some configure's
9: cache the environment passed in and notice the new environment is
10: different and abort. Doing a clean in tools/ should be enough to
11: make a build continue.
------------------------------------------------------------------------------
設問
(1) /to/
(2) /[A-Z]/
(3) /[A-Z]+/
(4) /[A-Z]?/
(5) /e./
(6) /\d/
(7) /^\s/
(8) /^\S/
(9) /:/
5. うさぎの数を勘定するプログラムについて答えよ。うさぎは一ヶ月に一羽の
子どもを作り、その子どもは二ヶ月目には子どもを作ることができるという設定
である。
f = []
f[0] = 2
f[1] = 3
while n < 5
f[n] = f[n-2] + f[n-1]
printf "%dヶ月目%d羽\n", n, f[n]
n += 1
end
(1) このプログラムには間違いが1箇所あり実行時にエラーとなる。間
違えている箇所を修正せよ。書きかえるか、追加するか、または
削除するかについては各自考えること。
(2) プログラムの実行結果を示せ 。
6. 以下のプログラムについて問に答えよ。この関数は y=a/(x+1) である。
i = 0
[ (ア) ] "aを入力してください:"
a = [ (イ) ]
while i < 4
x = i + 1
y += a/x
printf "x= [ (ウ) ]; y=[ (エ) ]\n", x, y
i += 1
end
[ (オ) ]
(1) 空欄を埋めよ。
(2) a=2 , i=2のとき x, y はそれぞれ何か。
(3) a=3 のとき、x を横軸、y を縦軸に取ったグラフを書け。