経営情報システム R04年度 第2問

第2問

ある値(value)を何らかのキー(key)を付けて記憶するデータ構造は、さまざま なプログラミング言語で利用可能である。 Python においては、辞書(dictionary)と呼ばれるデータ型が組み込まれてい る。辞書は、「キー: 値」という形のペアの集合であり、 {キー1: 値1, キー2: 値2, …, キーn: 値n} のように、「キー: 値」の各ペアをカンマで区切り、{ } で囲むことで定義できる。 例えば、 mis = {"科目名":"経営情報システム", "試験時間":"60 分"} として辞書mis を定義でき、mis["科目名"] でキー"科目名" に対応する値である "経営情報システム" を、また、mis["試験時間"] でキー"試験時間" に対応する値で ある"60 分" を参照することができる。なお、次のように、値には辞書型のデータ も指定することができる。 employee = { "E001":{"氏名":"中小太郎", "部門":"財務部"}, "E002":{"氏名":"診断次郎", "部門":"総務部"}} この場合、employee["E001"]["氏名"] で"中小太郎" を参照することができる。 いま、次のようにexam を定義するとき、値の参照に関する記述として、最も不 適切なものを下記の解答群から選べ。 exam = { "A":{"科目名":"科目A", "試験時間":"60 分", "配点":"100 点"}, "B":{"科目名":"科目B", "試験時間":"60 分", "配点":"100 点"}, "C":{"科目名":"科目C", "試験時間":"90 分", "配点":"100 点"}, "D":{"科目名":"科目D", "試験時間":"90 分"}, "E":{"科目名":"科目E", "試験時間":"60 分", "配点":"100 点"}, "F":{"科目名":"科目F", "試験時間":"60 分", "配点":"100 点"}, "G":{"科目名":"科目G", "試験時間":"90 分"} }

  1. exam["A"]["試験時間"] の値とexam["B"]["試験時間"] の値は等しい。
  2. exam["C"]["配点"] の値は、"100 点" である。
  3. exam["D"] に、キー"配点" は存在しない。
  4. exam["E"]["試験時間"] の値とexam["G"]["試験時間"] の値は等しい。
  5. exam["F"]["科目名"] の値は、"科目F" である。
▼ 解答・解説を見る

正解:

解答:エ

ネストした辞書(dictionary)の値参照を読み取る問題。「最も不適切」型なので、定義と矛盾する記述が正解。各科目の値を定義に照らして確認する。

  • ア(○):Aの試験時間は”60 分”、Bの試験時間も”60 分”。両者は等しい。正しい。
  • イ(○):Cの配点は”100 点”。正しい。
  • ウ(○):Dには”科目名”と”試験時間”しかなく、“配点”キーは存在しない。正しい。
  • エ(×):Eの試験時間は”60 分”、Gの試験時間は”90 分”。両者は等しくない。これが不適切な記述。
  • オ(○):Fの科目名は”科目F”。正しい。

最も不適切なのは

#プログラミング・言語

← 経営情報システムの一覧へ戻る