わえなび ワード&エクセル問題集

ワードとエクセルの練習問題の動画を「Youtube」で無料公開しています

【速報】基本情報技術者試験プログラミング能力、理数能力等に関する出題が強化される【表計算マクロ】

 

スポンサードリンク

【NEWS】

基本情報技術者試験は、経済産業省とIPA(独立行政法人情報処理推進機構)が主催する国家試験であり、情報処理技術者試験の中で最も受験応募者数が多い試験です。年に2回、春と秋に実施されます。

その試験を出題するIPAが、2019年1月24日付で「基本情報技術者試験における出題の見直し」に関するプレスリリースを公表しました。

 

www.ipa.go.jp

 

見直しの内容は要約すると次の3点です。プログラミングと理数を重視した出題や配点になります。

  1. 午後試験のCOBOLの出題は2019年秋まで、2020年春よりPythonを出題する
  2. 2020年春より、午後試験が13問出題7問解答から11問出題5問解答に変更となり、アルゴリズム20点、プログラム言語20点の配点が、それぞれ25点に引き上げられる
  3. 2019年秋より、午前試験で線形代数、確率・統計等、数学に関する出題比率を上げる

今後のAI時代を見据えて、午後試験の出題構成、午前試験の出題比率を見直します。これはAIの社会実装が進展していること、政府の「未来投資戦略2018」の中でプログラミング能力及び理数能力の重要性が示されていること等を踏まえたものです。
Copyright(C)IPA

【本件に関するわえなびの見解】

ところで、当ブログでは先日、基本情報技術者試験の表計算問題は、表計算の使い方が独特で、解読するのに時間がかかり、プログラミングを軽視したクソ問題だと指摘しました。


神エクセルというより、クソエクセルというべきかもしれませんが、情報処理の試験に国語の読解問題を出題するのは絶対に間違っています。

Pythonが出題されることを考えれば、シンプルにアルゴリズムを考えることに重点を置いた問題を出題すれば良いと考えております。表計算ソフトの問題もぜひプログラミング能力を重視した出題にするよう強く希望します。

 


【再掲・表計算問題を作ってみた】

資格試験ですから、アルゴリズムが分かっている人には簡単に見えて、理解不足の人には難しく見える問題にすべきです。というわけで、当ブログは「問題集」なので、サンプル問題を作ってみました。

 

模擬問題(平成25年春COBOL改題)

創立20周年の会社Xでは、創立記念日に勤続年数0~20年のすべての従業員に特別賞与を支給することにした。シート「支給係数」には次の表が入力されており、基本給に、役職と勤続年数によって導出される支給係数をかけ合わせて、100円未満を切り捨てた金額をもって、特別賞与とすることにした。例えば、管理職(役職コード:1)の従業員が入社日から10年以上経過していたら、その特別賞与の支給係数は0.2である。

f:id:waenavi:20190109213445j:plain

 

次の図はシート「従業員リスト」である。A~C列には従業員番号などが入力されており、図では省略しているが途中に空白等は無いものとする。

f:id:waenavi:20190109215107j:plain

 

役職コード(0または1)と勤続年数(整数)を引数、支給係数(小数)を戻り値とする関数keisuを作成した。

  • 関数 keisu(x, y)
    引数x:役職コード、引数y:勤続年数

設問(1)

従業員の人数がちょうど100人だったとする。セルF2に「=keisu(D2, E2) * (1 - D2)」と入力してF3:F101に複写した。一般職の支給係数の平均値を求める式はどれか。

ア = 合計(F2:F101) / (100 - 合計(D2:D101))
イ = 1 - 合計(F2:F101) / 合計(D2:D101)
ウ = 合計(F2:F101) / (1 - 合計(D2:D101))
エ = 合計(D2:D101) / (100 - 合計(F2:F101))
オ = 1 - 合計(D2:D101) / 合計(F2:F101)
カ = 合計(D2:D101) / (1 - 合計(F2:F101))

 

設問(2)

次の図は、関数keisuの概要を示したものである。

f:id:waenavi:20190109153244j:plain

次の9個の処理をすべて使って完成させたい。①~④のいずれかに入れて完成させる場合、③に当てはまるものはどれか。

  • i ← 1
  • i ← i + 1
  • sw ← 0
  • sw ← 1
  • skks ← 0
  • yaku ← 相対(支給係数!A3, i, 0)
  • nen_min ← 相対(支給係数!A3, i, 3)
  • nen_max ← 相対(支給係数!A3, i, 4)
  • skks ← 相対(支給係数!A3, i, 5)

f:id:waenavi:20190109224524j:plain

 

シート「従業員リスト」の項目名を次のように変更した。

f:id:waenavi:20190109215542j:plain

 

F列には基本給が数値で入力されているものとする。マクロを実行した時に、H~L列に、特別賞与を現金で支給するときに必要となる紙幣または硬貨の枚数を出力したい。

そこで、次の図のようなマクロkinshuをシート「従業員リスト」に格納して実行したが正しい計算結果にならなかった(kinshu_sum[5]は設問(6)で使用する)。

f:id:waenavi:20190109171334j:plain

設問(3)

従業員が100人で、そのうち管理職が15人であった場合、マクロkinshuを1回実行すると、関数keisuは通常何回呼び出されると考えられるか。

ア 15回
イ 85回
ウ 100回
エ 115回
オ 425回
カ 500回

 

設問(4)

マクロkinshuの下線部「特別賞与の金額を求める」について、あてはまる数式として正しいものはどれか。

ア 相対(A1, i, 5) * 切り捨て(keisu(相対(A1, i, 3), 相対(A1, i, 4)), 2)
イ 相対(A1, i, 5) * 切り捨て(keisu(相対(A1, i, 3), 相対(A1, i, 4)), -2)
ウ 切り捨て(相対(A1, i, 5) * keisu(相対(A1, i, 3), 相対(A1, i, 4)), 2)
エ 切り捨て(相対(A1, i, 5) * keisu(相対(A1, i, 3), 相対(A1, i, 4)), -2)
オ 切り捨て(相対(A1, i, 5), 2) * keisu(相対(A1, i, 3), 相対(A1, i, 4))
カ 切り捨て(相対(A1, i, 5), -2) * keisu(相対(A1, i, 3), 相対(A1, i, 4))

 

設問(5)

マクロkinshuの修正に関する次のア~カの記述の中で最も適当と考えられるものはどれか。

ア 繰り返し処理の条件を「j:1, j<=5, 1」に修正しなければならない。
イ shuruiとmaisuに代入する処理の順序を逆にしなければならない。
ウ 相対(H1, 0, j)と相対(H1, i, j)の位置を逆にしなければならない。
エ maisu > 0を条件とする分岐の処理を追加しなければならない。
オ kingakuを減らす処理を追加しなければならない。
カ 「i = i + 1」は内側の繰り返し処理の中に入れなければならない。

 

設問(6)

シート「枚数合計」に次の表を入力した。従業員全員に特別賞与を現金で支給するために必要な、各紙幣または硬貨の合計枚数をB2:B6に求めたい。マクロkinshuに繰り返しの処理を追加するとともに、次のP~Uの6つの処理のうち3つを選んで追加する場合、その組み合わせとして正しいものはどれか。

f:id:waenavi:20190109163753j:plain

P ・kinshu_sum[ i ] ← 0
Q ・kinshu_sum[ i ] ← 1
R ・kinshu_sum[ j ] ← kinshu_sum[ j ] + maisu
S ・kinshu_sum[ j ] ← kinshu_sum[ j ] + shurui * maisu
T ・相対(枚数合計!B1, i ,0) ← kinshu_sum[ i ]
U ・相対(枚数合計!B2, i ,0) ← kinshu_sum[ i ]
※ただし、P、Q、T、Uの添え字は i でも j でもよい。

ア P、R、T
イ P、R、U
ウ P、S、T
エ P、S、U
オ Q、R、T
カ Q、R、U
キ Q、S、T
ク Q、S、U

 

 


Youtube わえなび公式チャンネル
http://www.youtube.com/c/waenavijp

チャンネル登録(無料)をすると最新の動画をチェックできます。
初心者向けの動画が大量にあります。

 

 

 

 

 

Copyright(C)2018-2019 waenavi, All rights reserved. [www.waenavi.com 定礎 平成30年8月]