プログラム設計(ソフトウェア設計)
平成17年秋期 問5 問題確認
解説 |
この問題はプログラム自体が出てこず説明文や図より、ある程度処理を想像して解くので難しいと感じるかもしれないしかし、一つ一つ理解し、紙に内容を記述しながらゆっくりと解いていけばそこまで苦しむ問題ではない。 また突合せ処理をする前提条件として、突合わせるファイルの2つがキーで整列していないといけないということを覚えておくこと。 それがわかっているだけで、勘で設問1の答えがわかってしまう 設問1 表中の[a][b]についてキーワードとなる言葉を選択する問題。 [a]について [a]は処理2の突合せ処理である。[a]ファイルト[S3]ファイルを突合わせる。 処理2を図2から読み取ると、昇格ファイルを整列したものが[S3]であることと突合せ処理の結果が「昇格者ファイル」となっているのがわかる。 「昇格者ファイル」が作成される手順を説明文より読み取る。 ⑧の説明文に「~ 昇格はその年の 4 月 1 日に行い,当日職務変更していない社員 だけが昇格できる ~」 とある。つまり、3月31日に作られた「昇格者予定ファイル」と突合せるのは「職務変更ファイル」である。 あせらないで、ちょっとまって欲しい。 ファイル[S3]は突合せ処理を行うために、社員コードを昇順している。 つまり「職務変更ファイル」も社員コードで昇順しなければならないことに気がついてほしい。 すると、処理1で、社員コードで昇順に整列したファイル[S2]が存在することが図2よりわかる よって[a]のファイルは「イ S2」である。 [b]について [b]は処理4でファイル[S4]と突合せ処理を行っている。 そしてできたファイルは「階級更新ファイル」である。 「階級更新ファイル」がどのように作られるか、説明文を読んでみよう。 ⑨の説明で「~ 毎年 4 月 1 日に職務変更も昇格もしていない社員の階級を 2 上げる ~」 とある。これより突合せに必要なファイル2個を探していく。 [S4]のファイルのヒントは、処理3である。処理3の説明をみてみよう。 「社員表からレコードを読み込み,階級の値が 2 ~ 30 であって入社年月日が前年の 4 月 1 日以前のレコードを選び,社員コードの昇順に並べ, S4 ファイルとして出力する。」 とある。処理3には、「職務変更ファイル」の名前が出てこないので 必要となるもう片方のファイルは「社員コードで昇順された職務変更ファイル」であることがわかる。 よって[b]のファイルは処理1で作られた「イ S2」である。 設問内容に「解答は,重複して選んでもよい。」とあるのを見逃さないようにしよう。 [a][b]の裏解答例 時間がない場合にだけ使って欲しい。 突合せ処理では、整列してあることが前提条件である。 そこから考えると、「職務ファイル」「昇格者ファイル」ファイル[S1] が昇順でないことより解答欄から消去できる。 またファイル[S3]はすでに比較対象としてあるので もう片方が同じファイル[S3]であることはありえない よって[a]の答えはファイル[S2]である。 [b]についてはファイル[S2]か[S3]のどちらであるか?だけなのだが 「重複してもよい」と書いてある問題はたいてい重複した答えである よって[b]もファイル[S2]である。 少し時間があれば、説明文の中から 「階級更新ファイル」が「職務ファイル」と突合せをすることにきがつけば ファイル[S2]を簡単に選ぶことができる。 設問2 処理5~8の順番を入れ替えを行っても問題がない解答を選ぶもの これは、ファイルの内容の理解と処理の内容を理解していないと答えられないので気をつけること。 処理を入れ替えても問題が無いということは 処理を入れ替えたら内容が異なってしまう処理を探し出せばいい。 処理説明の5,6,7,8を順に見ていこう。 5~8は共にファイルを更新している。 5では「階級を更新」 6では「職務コードを更新」 7では「該当レコードの職群を“管理職”に更新」と「階級の値を 20 に更新」 8では「部署コードを更新」 である。 更新順序が入れ違いになるとおかしくなりそうなものは 「同じものを更新しているもの」 と推測できれば、問題は簡単に解ける。 5と7で、同じ「階級」を更新しているからだ。 7と5を逆にすると、7の昇格があったあとに、 さらに5の昇給を行ってしまうことがわかる。 よって5と7の順序を変えてはならない 正解は「ウ 処理 8 →処理 5 →処理 6 →処理 7」だけである。 設問3 人事規定の見直しをした場合、修正が必要な処理を探すもの。 変更点は2点 ① 4 月 1 日に職務変更も昇格もしていない社員のうち、入社して1年以上の社員~ ②入社後1年に満たないものは1階級だけあげる。 このことから、抽出処理をする所、更新処理をしている所の 処理であることが推測される。 図2,3を注意してみながら答えを探す。 処理1,2は職務変更ファイルと、その突合せなので関係がない。 処理3は対象者の抽出である。この抽出処理に、 入社1年以上の条件を加えればいいことがわかる 「ウ 処理 3」は2つの答えのうち1つである。 処理4は突合せ処理であるので違う。 処理5は更新処理であり、階級を更新している。 この処理に、1年未満の者は1階級だけあげる。という条件を加えればいいので 答えは「オ 処理 5」である。 処理6,8,9は階級の更新とは関係ないレコードの更新なので除外。 消去法で探しても答えはすぐみつかるだろう。 設問4 人事異動の発表資料を作表するために必要な旧社員表を答えるもの 旧社員表とは、レコードが何も更新されていない状態のものである。 それにきがつけば最も早く更新処理をしている処理は5であるのが表よりわかるので 答えは「ア 処理5の更新反映前の社員表 」であることがわかる。 |
まっち~様 ご投稿
メニューへ戻る