総視聴再生時間43万分以上(2017年5月13日現在)の動画で基本情報技術者試験の過去問&キーワード解説!スキマ時間に動画!〜これじょIT〜

PR広告

平成27年度春 基本情報技術者試験 午後 問13 ソフトウェア開発(表計算) 設問2

問13 ソフトウェア開発(表計算)

次の表計算、ワークシート及びマクロの説明を読んで、設問1~3に答えよ。

〔表計算の説明〕

 ある会社では、社員ごとの社内向け学習教材の学習進捗状況を表計算ソフトで管理している。

〔ワークシート:学習進捗管理(単元記述部分)〕

(1) 社員ごとにワークシート"学習進捗管理"が用意され、学習進捗状況が記載される。ワークシート"学習進捗管理"の単元記述部分である列A~Gの例を、図1に示す。

平成27年度春 基本情報技術者試験 午後 問13 ソフトウェア開発(表計算) 図1

(2) 学習教材は12の単元から構成されており、単元にはそれぞれ固有のIDが割り振られている。

(3) セル A2~A13 には、単元のIDが昇順に格納されている。単元のIDは100から 昇順に100刻みで付与されている。

(4) セル B2~B13 には、単元名が格納されている。

(5) 各単元は複数の項目から構成されている。セル C2~C13 には、単元に含まれる 項目の学習順序(以下、項目学習順序という)が格納されている。セルの値が"任意"の場合はどの項目から学習してもよいことを示し、セルの値が"順次"の場合は各項目を項目のIDが小さいものから順番に学習しなければならないことを示している。

(6) セル D2~D13 には、その単元の学習を開始してから完了するまでの学習に要する標準的な日数(以下、標準日数という)が格納されている。

(7) セル E2~E13 とセル F2~F13 には、それぞれ対応する単元の学習を開始した日(以下、学習開始日という)、学習を完了した日(以下、学習完了日という)がそれぞれマクロ StartLearning と FinishLearning を用いて設定される。日付は yyyy-mm-dd の形式で表示されるが、表計算ソフトの内部では1970年1月1日からの経過日数を整数値で保持している。計算にはこの内部の整数値を利用する。

(8) セル G2~G13 には、それぞれの単元の学習に関する判定結果が表示される。学習完了日が設定されたとき、学習に要した日数が標準日数以下の場合には"○"が表示され、そうでなければ"△"が表示される。学習開始日も学習完了日も学習に要した日数に含まれる。ここで、休日は考慮せず、休日も1日と数える。例えば、学習開始日が2014年5月10日で学習完了日が2014年5月12日の場合、学習に要した日数は3である。また、学習完了日が設定されていない場合には空値が表示される。

(1) この学習教材の項目の総数は52である。ワークシート"学習進捗管理"の項目記述部分である列I~Mの例を、図2に示す。

平成27年度春 基本情報技術者試験 午後 問13 ソフトウェア開発(表計算) 図2

(2) セル I2~I53 には、項目のIDが昇順に格納されている。項目のIDは、その項目が属する単元のIDの下2桁を01から始まる連番にしたものである。

(3) セル J2~J53 には、項目名が格納されている。

(4) セル K2~K53 には、それぞれの項目が学習開始可能であれば"可"が表示され、そうでなければ"不可"が表示される。学習開始可能であるとは、次の条件①、②をともに満たしていることをいう。

① 項目が属する単元が学習開始可能である。単元が学習開始可能であるとは、単元のIDが100であるか、又は、より小さいIDの単元の学習が全て完了していることをいう。

② 次の条件①又は②のどちらかを満たしている。

(a) 項目が属する単元の項目学習順序が"任意"である。

(b) 項目が属する単元の項目学習順序が"順次"であり、その項目のIDの下2桁が01であるか、又は、その単元の中でより小さいIDの項目の学習が全て完了している。

(5) セル L2~L53 とセル M2~M53 には、それぞれ対応する項目の学習開始日、学習完了日がそれぞれマクロ StartLearning とマクロ FinishLearning を用いて設定される。

設問2

ワークシート"学習進捗管理"に関する次の記述中の【 】に入れる正しい答えを、解答群の中から選べ。

IF(論理積(
    論理和(
	    切捨て(I3, -2) = 100,
		表引き($F$2〜$F$13, 【  b  】, 1) ≠ null)
	論理和(
	    垂直照合(切捨て(I3, -2), $A$2〜$C$13, 3, 0) = 【  c  】,
		剰余(I3, 100) = 1,
		【  d  】)),
	'可', '不可')

(1) それぞれの項目が学習開始可能か否かを表示するために、セル K2 に"可"を入力する。

(2) 次の式をセル K3 に入力し、セル K4~K53 に複写する。

b に関する解答群

  • ア 照合一致(切捨て(I2,-2),$A$2~$A$13,0)
  • イ 照合一致(切捨て(I2,-2),$A$2~$A$13,0)-1
  • ウ 照合一致(切捨て(I2,-2),$A$2~$A$13,0)+1
  • エ 照合一致(切捨て(I3,-2),$A$2~$A$13,0)
  • オ 照合一致(切捨て(I3,-2),$A$2~$A$13,0)-1
  • カ 照合一致(切捨て(I3,-2),$A$2~$A$13,0)+1

c に関する解答群

  • ア '順次'
  • イ '任意'

d に関する解答群

  • ア L3=null
  • イ L3≠null
  • ウ M2=null
  • エ M2≠null
  • オ M3=null
  • カ M3≠null

解説

【 b 】には「オ 照合一致(切捨て(I3,-2),$A$2~$A$13,0)-1」が入ります!

【 c 】には「イ '任意'」が入ります!

【 d 】には「エ M2≠null」が入ります!

問題文に関わる関数の説明をします。問題文の巻末からの抜粋です。

表引きの書式は、表引き(セル範囲, 行の位置, 列の位置)となり、セル範囲の行の位置と列の位置で指定されたセルの値を返します。

照合一致の書式は、照合一致(式, セル範囲, 検索の指定)となります。この問題の場合、検索の指定は"0"のみです。"0"の場合、式の値と一致する値を検索します。セル範囲を左上から走査し「式」の値と始めに一致するセルの位置を返します。

垂直照合の書式は、垂直照合(式, セル範囲, 列の位置, 検索の指定)となります。の問題の場合、検索の指定は"0"のみです。"0"の場合、式の値と一致する値を検索します。セル範囲の左端列を上から下に走査し、検索の指定によって指定される条件を満たすセルが現れる最初の行を探し、セルの値を返します。

表引き($F$2〜$F$13, 【 b 】, 1) ≠ null)での【 b 】は行の値を求めます。どのような値になるかは問題文を確認します。

(4) セル K2~K53 には、それぞれの項目が学習開始可能であれば"可"が表示され、そうでなければ"不可"が表示される。学習開始可能であるとは、次の条件①、②をともに満たしていることをいう。

① 項目が属する単元が学習開始可能である。単元が学習開始可能であるとは、単元のIDが100であるか、又は、より小さいIDの単元の学習が全て完了していることをいう。

② 次の条件(a)又は(b)のどちらかを満たしている。

(a) 項目が属する単元の項目学習順序が"任意"である。

(b) 項目が属する単元の項目学習順序が"順次"であり、その項目のIDの下2桁が01であるか、又は、その単元の中でより小さいIDの項目の学習が全て完了している。

表引き($F$2〜$F$13, 【 b 】, 1) ≠ null)は「より小さいIDの単元の学習が全て完了していることをいう。」の部分を表現します。

照合一致(切捨て(I3,-2),$A$2~$A$13,0)-1

F列には単元の学習終了日が入力されています。「より小さいIDの単元の学習が全て完了」は例えばID300番台であれば、ID200番台の単元の学習がすべて終了していればよいのでF3の値が入力されているかどうかを判定します。

例:102 1.2 応用数学 K3の場合を考えると、まず項目IDから、単元IDを調べます。項目ID102は単元ID100(基礎理論)です。この場合は、切捨て(I3, -2) = 100が成り立ち、「可」となります。単元IDが100の場合は、すべてこの式が当てはまります。これでは「表引き($F$2〜$F$13, 【 b 】, 1) ≠ null)」が分からないので、単元200番台をみます。

例:項目ID 201 2.1データ構造 K6の場合を考えると、項目IDが201の場合、切り捨てすると単元ID200が導けます。次に、列Aから単元ID200の位置を探します。これが「照合一致(切捨て(I3,-2),$A$2~$A$13,0)」となります。この例では単元ID200は、A2から数えて2番目のA3にあるので、2となります。この2をそのまま($F$2〜$F$13, 2, 1)とすると、単元ID200の学習終了日をのセルの値をとってきてしまいます。そこで、-1補正し「照合一致(切捨て(I3,-2),$A$2~$A$13,0)-1」とすると、目的のセルの値が取れます。

答えは「表引き($F$2〜$F$13, (切捨て(I3,-2),$A$2~$A$13,0) - 1, 1) ≠ null)」となります!

続いて【 c 】

垂直照合(切捨て(I3, -2), $A$2〜$C$13, 3, 0)では「任意」か「順次」かをチェックしています。「任意」の場合は、可となります。従って【 c 】には「イ '任意'」が入ります。

垂直照合(切捨て(I3, -2), $A$2〜$C$13, 3, 0) = '任意'

となります。簡単に式を説明すると、項目ID 201 2.1データ構造 K6の場合を考えると、項目IDが201の場合、切り捨てすると単元ID200が取得できます。それを列Aで走査するとA3にでヒットします。その行のAから数えて3番目の列Cの値を返します。

最後に【 d 】

前の項目が終わったかどうかをチェックします。K3の場合、前の行の学習終了日M2がnullではないことが「可」の条件となります。

【 d 】には「エ M2≠null」が入ります!

平成27年度春 基本情報技術者試験午後 問13 ソフトウェア開発(表計算) 目次

  1. 問題文とキーワード
  2. 設問1
  3. 設問2
  4. 設問3

一覧に戻る

タグ: ,,,,

PR広告

フェイスブックコメント

平成28年度秋 基本情報技術者試験 午後 テキスト・動画解説

平成28年度秋 基本情報技術者試験 午前 テキスト・動画解説

平成28年度春 基本情報技術者試験 午後 テキスト・動画解説

平成28年度春 基本情報技術者試験 午前 テキスト・動画解説

平成27年度秋 基本情報技術者試験 午後 テキスト・動画解説

平成27年度春 基本情報技術者試験 午後 テキスト・動画解説

平成27年度春 基本情報技術者試験 午前 テキスト・動画解説

平成26年度秋 基本情報技術者試験 午前 テキスト・動画解説

平成26年度春 基本情報技術者試験 午前 テキスト・動画解説