表計算問題の点数をしっかり伸ばす”コツ”について

表計算
スポンサーリンク

今回のテーマは、ズバリ! 表計算を解くためのコツです。

基本情報技術者試験における表計算は、
簡単そうに見えて、実はうっかりミスが発生しやすい注意すべき分野。

今回はそんな表計算の問題を確実に答えるためのポイントについて解説します。

解いてみると意外に難しく、うっかりミスをしやすい表計算。

どうか初心者や未経験者の人も、
今回紹介するポイントを頭に入れて、少しでも得点を伸ばしてください。

ちなみに以下のページでは、
表計算の問題を解くための”勉強と準備”について解説しています。

基本情報技術者試験 表計算の問題を解くための"勉強と準備"について
こちらでは基本情報技術者試験における表計算の"勉強と準備"について解説しています。表計算は問題が簡単そうに思えますが、決して油断できる内容ではないため注意が必要です。

今回の”コツ”と一緒に読んで、より表計算の点数をアップさせてください。

出典および参考資料:
今回の記事は、IPA(情報処理推進機構)の過去問題より
問題を引用・出典しております。
また解説の必要性に応じて、問題を抜粋・加工して掲載しております。
シロ
シロ

基本情報技術者試験の表計算って、
初心者殺しの分野な気がする

チョコ
チョコ

前半の問題が簡単で、
後半の問題が難しいってところか?

シロ
シロ

そうだよ。
関数とマクロの難易度の差が大きすぎると思うんだ

チョコ
チョコ

だからこそ今回はそんな受験者の為に、
表計算の問題を解くためのコツを紹介している。
紹介しているコツを利用して
少しでも点数が伸ばせるように努力してみてくれ

スポンサーリンク

表計算の問題を解くためのコツ

・問題を効率的に解くためにプログラムの説明と機能はしっかり把握する

表計算を解く上で一番重要なポイントは、
問題に書いてある関数やマクロの機能を具体的にイメージできるかという点です。

表計算に限らずプログラミングというものは、

・データの流れ
・命令文が持つ機能
・計算の処理結果

といった要素を具体的にイメージできれば、
プログラムはスムーズに組みあがり、問題も効率的に解けるようになります。

また表計算の場合は、
問題文の中だけでプログラムが完結しているパターンが多いため、
機能の把握という要素の重要度が上がります。

そのために表計算の問題に取り掛かる際には、
問題に書かれているプログラムの説明をしっかり把握しておきましょう。

またプログラムの説明を読む際のコツとしては、大まかな機能を把握するという点が重要です。

細かい数値やセルの番号の理解は後回しにして、
重要な機能だけを把握できるように問題を読み進めてください。

またイメージ化が難しいといった人は、
プログラムや関数を図やフローチャートに書き起こすという作業をしてみてください。

机上の空論で永遠と悩み続けているよりかは、遥かに効率的で分かりやすいと言えます。

シロ
シロ

プログラムというものは、機能や内容が曖昧だと、
途端に処理が正しくないバグだらけのプログラムになるよ

チョコ
チョコ

その場しのぎでプログラムが出来上がったとしても、
後で必ずバグを出すからな。不思議であり面白いもんだ。

シロ
シロ

みんなはそんなプログラムを作らないようにしてね

スポンサーリンク

・セルや計算式の内容を書き出すのも有効な手段

表計算問題を解き始めたけど、処理の流れがイメージ化ができない!

どうもプログラムが理解できない・・・

そんなあなたにおすすめなのが、
セルや計算式の内容を書き出す方法です。

例えば

=IF(A3>80,合格,不合格)
  ↑
英語の成績

といった具合に内容を補足する説明をメモしましょう。

セルや計算式の内容を書き出す方法は、とても単純ですが、効果はバツグン。

問題が理解しやすくなるだけでなく、
後で振り返った時の確認もしやすくなるため、
解答の確実性が上がる、時間の節約になるといったメリットがあります。

他にも内容が明確化するため、選択肢が絞りやすくなるといったメリットもあります。

かなり有効な方法であるため、ぜひ一度は試してみてください。

シロ
シロ

セルや計算式の内容を書き出すといった方法は、
表計算や情報処理に慣れていない初心者ほど
取り入れた方が良い方法だね

チョコ
チョコ

一見すると時間が掛かる方法に思えるが、
見直しの時間を含めてトータル的にみると、時間の節約になる。
単純だが効果は絶大だ

・マクロと関数はプログラムの作成順に解く

表計算の問題を解く上で、
マクロと関数はプログラムの作成順に解くといった方法も、
かなり有効なので覚えておいてください。

なぜマクロや関数の作成順に解くのかというと、
表計算の問題では、問題の出題順序とプログラムの作成順序が違う場合があるからです。

例えば、
プログラム上では、関数→マクロ→関数といった具合でプログラムを作成しているのに、
問題の出題は、関数→関数→マクロといった感じで問題が出題されるパターンがあります。

上記のような事態が発生すると、
細かい機能をスルーした状態で問題が進むため、
問題を間違えやすくなります。

そのためプログラムのすべての機能を上から順に当てはめてから、
もしくは理解してから問題を解いてみてください。

上手くいけばパズルのピースがハマったような状態で、スッキリと問題が解けると思います。

シロ
シロ

基本情報技術者試験における表計算の問題は、
基本的に関数問題→マクロ問題っていう流れになっているから、
プログラム本来の作成順序とか処理順とはちょっと違うんだよね

チョコ
チョコ

そこがミソなんだよな。
受験者が勘違いしやすくなっている状況を
わざと問題内で作っていると思うぞ

シロ
シロ

まあその辺も試験を解く上で、
重要なポイントなのかも知れないね

スポンサーリンク

・関数問題を解くための考え方とコツ

表計算の関数は簡単って聞いたけど、普通に難しい!

関数が複雑でよく分からない・・・

上記のような考えを持っている人は、以下の方法を利用してみてください。

・問題文の内容を関数に当てはめるだけと考える
・選択肢の横に関数の対象となっている問題文を写して見比べてみる
・関数で利用されているセルの内容を書いてみる

ちなみに「問題文の内容を関数に当てはめるだけと考える」方法は、
単純に問題を解く際に考え方を変えるだけ。

関数の問題は難しいことを考えずに、
セルの内容や条件式に使われている数字を重点的に考えると、
問題が一気に分かりやすくなります。

どの方法もやっていることは単純ですが、
関数の問題を、スムーズで明確に、そして単純に解くために有効な方法です。

また表計算の関数だけでなく、マクロ問題にも応用できる方法であるため、
是非とも一度試してみてください。

シロ
シロ

表計算の関数問題に苦手意識を持っている人は、
とにかく問題文の内容を関数に落とし込むだけと、
単純に考えるようにしてね

チョコ
チョコ

表計算の関数は、正直言って点取り問題だ。
だから関数で点数が取れないと躓いて、勉強が大幅に遅れるならば、
最悪の場合、言語を変えてみるのも1つの方法だな

・入れ子(ネスト)を囲って、分かりやすさアップ

if(A4<200,if(A5<300,合計(c2:c5),合計(d2:d5)),if(A6<300,合計(e2:e5),合計(f2:f5)))

貴方ならこんな式、どうやって読み取りますか?

もしかしたら括弧で括ってある部分を間違えて、
とんでもない答えにたどり着いたことがないでしょうか?

そんな時に重要なのが、入れ子(ネスト)を囲うというやり方。

問題に書かれている式を軽く写し取って、ifや合計といった関数を括弧で括ってください。

具体的には

if(A4<200,[if(A5<300,合計(c2:c5),合計(d2:d5))],[if(A6<300,合計(e2:e5),合計(f2:f5))])

するとかなり分かりやすく式が整理できると思います。

テスト本番の際には、式だけをメモしてから、
括りたい場所を大げさに大きく書いた括弧で囲みましょう。

また入れ子を括る作業に慣れて式が読みやすくなったら、
次は書面やパソコンの画面で過去問題を利用して、
入れ子が読みやすくなるまで色々な式を読み込んでください。

すると普通に式を読むよりかなり早い段階で、式がスムーズに読めるようになるでしょう。

シロ
シロ

基本情報技術者試験は紙とペンによるマークシート方式から、
パソコンを使ったCBT方式に移行したから、
問題に内容を書き込むといった方法が出来なくなったよね

チョコ
チョコ

だから今後は、試験会場に用意されているメモ用紙に、
どうやってメモをするかというポイントも重要になる訳だ

シロ
シロ

問題のすべてを書き写す訳にはいかないから、
内容の要点や式の重要部分だけを書き写して、問題を解き進めるようになるね

チョコ
チョコ

間違いなく練習が必要になる方法だから、
絶対に試験前までに、パソコンを利用してメモを取る練習をしておいてくれ!

・マクロは1つ1つの式や文を丁寧に読む

マクロの問題が解けないという人は、
マクロの内容を1行1行、丁寧に読むという点を心がけてください。

なぜマクロの内容を丁寧に読むのかというと、
マクロの問題ができない人に限って、
プログラムの全体や複数の処理を一気に読もうとするからです。

そもそも1つ1つの処理すらも読み切れないのに、
複数の処理を読もうとすれば、結果はどうなるか目に見えているかと思います。

そのためマクロの問題ができないという人は、
できる限りマクロのプログラムを1行1行丁寧に読み、
確実性を上げてマクロの問題を解いてください。

シロ
シロ

マクロができないって人は、
一度でいいから何かしらの表計算ソフトを使って、
マクロを立ててみても良いかもね

チョコ
チョコ

正直言って、マクロのプログラムが立てられないとしても、
マクロの問題は解けると思う。
だがマクロを立てたという経験は、
必ず問題を解く時の力になってくれるぞ

シロ
シロ

マクロの問題を解く際に重要なのは、
どのように問題を解くかではなく、
どのような準備をするかといった点だろうからね

・マクロを確実に答えるためには相対表現と疑似言語が理解が必須

マクロの問題を確実に答えるために必要な知識、
それはズバリ、相対表現と疑似言語です。

というのも、基本情報技術者試験で出題されている表計算のマクロ問題では、
アルゴリズムで使われている疑似言語と相対表現が、
ほぼ確実に問題に使われているからです。

マクロの問題が出題され始めた
平成23秋期より令和元年秋期のテストを集計してみたところ、
疑似言語と相対表現、共に100%の確率で問題に採用されています。

またマクロとして書かれているプログラム内には、
以下の割合で関数が使われているようです。

関数名回数
相対17
論理積11
論理和
照合一致
照合検索
条件付き合計
条件付き個数
最大
表引き
否定
水平照合
切り上げ
最小
整数部
四捨五入

※平成23年秋期から令和元年秋期のテストによるマクロ問題
 全17回から集計

上記の集計内容を見ると、相対表現に加えて、
論理積と論理和、照合一致といった関数の理解は必須と言えるでしょう。

シロ
シロ

表計算のマクロには疑似言語が使われていることは知っていたけど、
相対表現が100%の確率で出題されるとは気がつかなかったな…

チョコ
チョコ

まああくまでも平成23年から令和元年のテストまでの記録だから、
参考程度の内容にはなるが、マクロの勉強を進める上では、
かなり良い指標になると思うぞ。

シロ
シロ

実際マクロで使われている処理に難しいものは殆どないから、
後は問題文をしっかり読み進める根気、
プログラムを理解する能力だけが重要と言えるかもね

スポンサーリンク

・式が複数組み込まれている場合は内側から分解する

表計算の問題には、
以下のような関数の中に関数が入っているような問題が存在します。

出典 平成29年春期午後試験 問13表計算問題 
設問2の解答欄dより

エ 論理和(論理積(F4≠’-’,F4=’×’),合計(料金表!C16:N16)=1)

こういった式の中に式が内包されている場合は、
まず内部に書かれている論理積の内容と合計の内容を割り出します

そして内容を割り出したら、論理積や合計の内容をメモしてください

あとは、論理和に対して、内容を当てはめるだけ。

すると、分かりづらかった長ったらしい式も、かなり分かりやすくなるでしょう。

ただ人によっては「まだ分かりにくい!」と思うかも知れません。

そういった場合は、関数の内部にあるセルの内容についてもメモをしてください。

もしここまでやっても、まだ分かりづらいと思っている場合は、
正直言って勉強不足です。

基礎をやり直すつもりで

・関数の機能を把握する
・表計算の仕様を読み直す

といった工程に戻りましょう。

シロ
シロ

長い式を内側から分解するっていう方法は、
式が複雑になればなるほど有効な方法だね

チョコ
チョコ

この方法は関数だけでなく、
表計算のマクロ問題を解く上でも重要な技術だ。

シロ
シロ

式を分解して考えるという方法は、基本的な技術ではあるけど、
意識して問題を解くのと意識しないで問題を解くのでは、
確実に差が出るよ。
だから必ず身に付けておくようにしようね。

・マクロ問題が解けない場合は、4つのポイントを確かめる

マクロチェックポイント

表計算のマクロ問題が難しい・・・

マクロだけ問題が解けない・・・

そんな悩みを持っている人は、
以下のポイントを満たしているかチェックしてみてください。
・問題に使われているプログラムの機能を把握しているか?
・表計算の関数を理解しているか?

・アルゴリズムの疑似言語プログラムが読めるか?
・相対参照を理解しているか?
・プログラムを沢山読んでいるか?

表計算で出題されるマクロのプログラムは、
簡単に言ってしまえば、
表計算の関数とアルゴリズムの疑似言語プログラムを混ぜ合わせたようなものです。

そのため表計算の関数を理解して、疑似言語プログラムが読めれば、
ある程度問題が解けるようになります。

また表計算のマクロ問題では、
セルを相対的に表す、相対参照がよく使われます。

だからこそ表計算のマクロ問題を解くためには、
相対参照への理解が必要不可欠だと言えるでしょう。

そして4つ目の「プログラムを沢山読んだ」という項目についてですが、
マクロ問題が解けない人の共通点として、
プログラムを読んだ経験が少ないという点があります。

ですのでマクロ問題が解けないという人は、
表計算の過去問題やアルゴリズムの過去問題を使って、
プログラムを読む練習をしてみてください。

またプログラムを読む際には、
問題文に書かれているプログラムの機能をしっかりと把握するように、
問題文を読み込んでみましょう。

チョコ
チョコ

マクロ問題は、
確かに表計算で出題される他の問題より難しい。
けどあくまでも、表計算の延長線上でしかないと考えた方が良いぞ

シロ
シロ

あと重要なのは、
疑似言語が読めるかどうかだからね。
むしろアルゴリズムの勉強ができているかで、
点数が大きく変わかもね

スポンサーリンク

まとめ

今回は表計算の問題を解くためのコツについて解説しました。

・表計算は、処理の内容が想像できるかが大事
・セルや計算式の内容を書き出すのも有効な手段
・マクロと関数は、作成している順番に解く
・前半の関数問題は、問題文を式に当てはめればOK
・関数で詰まったら、書式と定義をチェック
・マクロは1つ1つの式や文を丁寧に読む
・マクロを確実に答えるためには相対表現と疑似言語が理解が必須

・式が複数組み込まれている場合は内側から分解する
・入れ子(ネスト)を囲うと分かりやすさアップ
・マクロが解けない場合は、以下のポイントをチェックする
 ・表計算の関数を理解しているか?
 ・アルゴリズムの疑似言語プログラムが読めるか?
 ・相対参照を理解しているか?
 ・プログラムを沢山読んでいるか?

今回紹介したポイントやコツは、
単純でありながらも覚えておくと、確実に問題を解く際の手助けをしてくれるでしょう。

ちなみに以下のページでは、
「基本情報技術者 表計算 とっておきの解法」という参考書のレビューをしています。

レビュー『基本情報技術者 表計算 とっておきの解法』
『基本情報技術者 表計算 とっておきの解法』は、基本情報技術者試験において表計算を選ぶならば、必ず選択肢に入れておいてください。分かりやすい解説、充実した問題の質と量、電子書籍版の無料ダウンロード権。素晴らしいポイントに溢れています。

個人的に表計算の勉強をするならば、
この参考書以外有り得ないと言えるぐらい優れている参考書です。

特にマクロに関しての丁寧な解説と練習問題の素晴らしさという点に関しては、
他の参考書より頭1つ抜けているため、
是非とも表計算の勉強に取り入れてください。

コメント