HOME»基本情報技術者平成25年秋期問題»午後問13
基本情報技術者過去問題 平成25年秋期 午後問13
⇄問題文と設問を画面2分割で開く⇱問題PDF⇱表計算ソフトの機能・用語問13 ソフトウェア開発(表計算)
次の表計算のワークシート及びマクロの説明を読んで,設問1,2に答えよ。
〔表計算の説明〕
ある科目を受講する学生を,知人関係の情報に基づいてグループ分けするプログラムを表計算ソフトで作成した。グループ分けする対象の学生は50人である。グループはそれぞれ10人で,各グループにはあらかじめ1人のグループ長が決められている。
〔ワークシート:知人関係類似度行列〕
任意の2学生の知人関係の情報を表現した"知人関係類似度行列"を作成した。ワークシート"知人関係類似度行列"の例を図1に示す。
ワークシート"知人関係類似度行列"を基に,図2に示すワークシート"グループ分け"を作成した。
〔表計算の説明〕
ある科目を受講する学生を,知人関係の情報に基づいてグループ分けするプログラムを表計算ソフトで作成した。グループ分けする対象の学生は50人である。グループはそれぞれ10人で,各グループにはあらかじめ1人のグループ長が決められている。
〔ワークシート:知人関係類似度行列〕
任意の2学生の知人関係の情報を表現した"知人関係類似度行列"を作成した。ワークシート"知人関係類似度行列"の例を図1に示す。

- 各学生には 1〜50 の受講者番号が振られている。セル A3〜A52 には,1から順番に受講者番号を入力する。セル B3〜B52 には受講者番号に対応する氏名を入力する。同様にセル C1〜AZ1 には受講者番号を,セル C2〜AZ2 には氏名を入力する。
- セル C3〜AZ52 には,対応する2人の知人関係の類似性をある指標に基づいて数値化した値(以下,類似度という)が格納されている。類似度は0以上1以下の数値である。各セルに対応する学生2人の組合せが同一であれば類似度は同じ値である。例えば,受講者番号1の佐藤一郎と受講者番号2の鈴木二部の類似度に対応するセル C4,D3 にはいずれも同じ値が格納される。また,同一学生同士に当たるセル C3,D4,…,AZ52 には 0 が入力されている。
ワークシート"知人関係類似度行列"を基に,図2に示すワークシート"グループ分け"を作成した。

- セル A3〜A52 には,1から順番に受講者番号を入力する。セル B3〜B52 には,受講者番号に対応する氏名を入力する。
- セル C1〜G1 には,1から順番にグループ番号を入力する。
- セル C2〜G2 には,各グループのグループ長の受講者番号を入力する。
- セル C3〜G52 には,それぞれの学生(グループ長を含む)が,対応するグループに割り当てられている場合は 1 を,そうでない場合には 0 を入力する。
- セル H3〜H52 には,対応する学生が既にいずれかのグループに割り当てられている場合は1が,そうでない場合は 0 が表示される。
- セル C53〜G53 には,対応するグループに割り当てられた学生が10人であれば 1 が,そうでない場合は 0 が表示される。
- 本ワークシートは,グループ分け作業を支援するための推薦機能を有している。どのグループにも割り当てられていない学生と,所属する人数が10人に達していないグループのグループ長との組合せの中で,類似度が最大となる組合せを抽出し,その組合せに含まれる学生の受講者番号とグループ長が属するグループ番号を行 55 に表示する。ただし,類似度が最大となる組合せが複数ある場合,次の優先順で最も優先度が高い組合せを表示する。
- 割り当てようとする学生の受講者番号が最も小さい組合せ
- @に該当する組合せが複数存在する場合,その中でグループ長が属するグループ番号が最も小さい組合せ
- 列Jから列Qを,推薦機能のための計算領域に用いる。
設問1
ワークシート"グループ分け"の推薦機能に関する次の記述中の に入れる正しい答えを,解答群の中から選べ。
- セル J3〜N52 には,それぞれの学生と対応するグループ長との頼似度の値を入力する。ただし,学生が既にいずれかのグループに割り当てられている場合,又は対応するグループに割り当てられている学生数が10人である場合には−1が入るようにしたい。そこで,次の式をセル J3 に入力し,セル J3〜N52 に複写する。
IF(a,−1,表引き(知人関係類似度行列 !$C$3 〜 $AZ$52,b)) - それぞれの学生を割り当てる候補となるグループを選定するために,次の式をセル O3 に入力し,セル O4〜O52 に複写する。
最大(J3〜N3)
さらに,次の式をセル Q3 に入力し,セル Q4〜Q52 に複写する。
照合一致(O3,J3〜N3,0) - 推薦する受講者番号を表示するために,次の式をセル P3 に入力し,セル P4〜P52 に複写する。
順位(O3,O$3〜O$52,1)
さらに,次の式をセル C55 に入力する。
c - 推薦する学生の割当て先グループ番号を表示するために,次の式をセル G55 に入力する。
d
a に関する解答群
- 論理積($H3=0,C$53=0)
- 論理積($H3=0,C$53=1)
- 論理積($H3=1,C$53=0)
- 論理積($H3=1,C$53=1)
- 論理和($H3=0,C$53=0)
- 論理和($H3=0,C$53=1)
- 論理和($H3=1,C$53=0)
- 論理和($H3=1,C$53=1)
b に関する解答群
- $A3,C$1
- $A3,C$2
- A$3,C$1
- A$3,C$2
c に関する解答群
- 照合一致(1,P3〜P52,0)
- 照合一致(50,P3〜P52,0)
- 照合検索(1,P3〜P52,O3〜O52)
- 照合検索(50,P3〜P52,O3〜O52)
- 条件付個数(H3〜H52,=1)
- 条件付個数(O3〜O52,=−1)
- 条件付個数(O3〜O52,≠−1)
d に関する解答群
- 整数(条件付個数(H3〜H52,=1)/10)+1
- 表引き(Q3〜Q52,C55,1)
- 照合一致(C55,P3〜P52,0)
- 照合検索(C55,P3〜P52,O3〜O52)
- 照合検索(C55,Q3〜Q52,A3〜A52)
- 条件付個数(C53〜G53,=1)+1
解答選択欄
- a:
- b:
- c:
- d:
解答
- a=ク
- b=イ
- c=ア
- d=イ
解説
この設問の解説はまだありません。
設問2
ワークシート"グループ分け"のセル C2〜G2 にグループ長の受講者番号を入力して実行すると以後のグループ分け処理を全て自動化するマクロ Grouping を,ワークシート"グループ分け"に格納した。マクロ Grouping は次の手順で処理を行う。
- セル C3〜G52 を全て 0 で初期化する。
- 5人のグループ長をそれぞれのグループに割り当てる。つまりセル C3〜G52 の中で対応するセルの値を 1 に変更する。
- 推薦機能によって,推薦する学生の受講者番号はセル C55 に,グループ番号はセル G55 に表示されるので,セル C3〜G52 の中で対応するセルの値を 1 に変更する。
- 全員がいずれかのグループに割り当てられるまでBを繰り返す。

e,g に関する解答群
- 相対(B2,C55,I) ← 1
- 相対(B2,C55,G55) ← 1
- 相対(B2,I,G55) ← 1
- 相対(B2,I,相対(B2,0,I)) ← 1
- 相対(B2,I,相対(B2,C55,I)) ← 1
- 相対(B2,相対(B2,0,I),I) ← 1
- 相対(B2,相対(B2,C55,I),I) ← 1
- 相対(B2,相対(B2,0,G55),I) ← 1
f に関する解答群
- NumGroups
- NumGroups * NumGroups
- NumUsers
- NumUsers * (NumGroups − 1)
- NumUsers * NumGroups
- NumUsers + NumGroups
- NumUsers − NumGroups
- NumUsers / NumGroups
解答選択欄
- e:
- f:
- g:
解答
- e=カ
- f=キ
- g=イ
解説
この設問の解説はまだありません。