ITパスポート過去問 平成31年度(2019年)問98
表計算ソフトを用いて,二つの科目X,Yの成績を評価して合否を判定する。それぞれの点数はワークシートのセルA2,B2に入力する。合計点が120点以上であり,かつ,2科目とも50点以上であればセルC2に“合格”,それ以外は“不合格”と表示する。セルC2に入れる適切な計算式はどれか。

選択肢
- ア:IF(論理積((A2 + B2) ≧ 120, A2 ≧ 50, B2 ≧ 50), '合格', '不合格')
- イ:IF(論理積((A2 + B2) ≧ 120, A2 ≧ 50, B2 ≧ 50), '不合格', '合格')
- ウ:IF(論理和((A2 + B2) ≧ 120, A2 ≧ 50, B2 ≧ 50), '合格', '不合格')
- エ:IF(論理和((A2 + B2) ≧ 120, A2 ≧ 50, B2 ≧ 50), '不合格', '合格')
- ア
- イ
- ウ
- エ
正解と解き方・学習ポイント(AI解説)
合格条件は、(1) 合計点が120点以上、(2) 科目Xが50点以上、(3) 科目Yが50点以上の3つを同時に満たすことです。同時に満たす条件の結合には論理積を用います。IF関数は IF(条件, 条件が真のとき, 条件が偽のとき) の形なので、条件に論理積を置き、真のときに「合格」、偽のときに「不合格」を返す式を選びます。
Point
この問題は、IF関数で複数の条件をまとめて合否を判定できるかを確認する問題です。特に、「かつ」の条件は論理積、「または」の条件は論理和として扱い、条件のまとめ方と表示結果(合格、不合格)の並びを正しく設定できることが必要です。
解くために必要な知識
この問題を解くには、IF関数の書式と、論理積(AND)と論理和(OR)の違いを理解している必要があります。
用語の整理
| 用語 | 意味 |
|---|---|
| IF関数 | 条件が真のときは第2引数、偽のときは第3引数を返す関数です。書式は IF(条件, 真の場合の値, 偽の場合の値) です。 |
| 論理積(AND) | すべての条件が真のときだけ真になります。 |
| 論理和(OR) | 条件のうち1つでも真であれば真になります。 |
判断ポイントの整理
判断すべき点は2つあります。
1. 論理積と論理和のどちらを使うか
-
すべての条件を同時に満たす場合は論理積です。
-
いずれか1つでも満たせばよい場合は論理和です。
本問は「かつ」で条件がつながっているため、論理積を使うのが原則です。
2. IF関数の第2引数と第3引数の順序
IF関数は次の順序です。
- IF(条件, 真のときの表示, 偽のときの表示)
本問は、条件が真のときに「合格」、偽のときに「不合格」とする必要があります。
問題の解法手順
図表の読み取り
図のワークシートでは、A2が科目X、B2が科目Y、C2が合否です。例としてA2=50、B2=80なので、合計は130点です。各科目も50点以上のため、C2は「合格」と表示されています。
解く手順
1. 条件を式にする
-
合計点が120点以上
- (A2 + B2) >= 120
-
科目Xが50点以上
- A2 >= 50
-
科目Yが50点以上
- B2 >= 50
2. 条件の結合方法を決める
問題文は「合計点が120点以上であり、かつ、2科目とも50点以上」です。
よって、3条件をすべて満たしたときのみ真となる論理積を使います。
- 論理積((A2 + B2) >= 120, A2 >= 50, B2 >= 50)
3. IF関数に当てはめる
-
IF(条件, 真のとき, 偽のとき)
-
真のときは「合格」、偽のときは「不合格」です。
4. 完成形
IF(論理積((A2 + B2) >= 120, A2 >= 50, B2 >= 50), '合格', '不合格')
選択肢ごとの解説
- ア:正解
論理積で3つの条件(合計120点以上、A2が50点以上、B2が50点以上)をすべて満たす場合だけ真になります。さらに、IF関数で真のときに「合格」、偽のときに「不合格」を返しており、問題文の条件と一致します。
- イ:不正解
条件のまとめ方は論理積で正しいですが、条件が真のときに「不合格」、偽のときに「合格」を返しており、表示が逆なので不適切です。
- ウ:不正解
論理和を使っているため、3条件のうち1つでも満たせば「合格」になってしまいます。問題は3条件すべてを満たす必要があるため不適切です。
- エ:不正解
論理和を使っているため条件のまとめ方が不適切です。さらに、条件が真のときに「不合格」を返しており、表示も逆なので不適切です。
まとめ
合格条件は、(1) 合計点が120点以上、(2) 科目Xが50点以上、(3) 科目Yが50点以上の3つを同時に満たすことです。同時に満たす条件の結合には論理積を用います。IF関数は IF(条件, 条件が真のとき, 条件が偽のとき) の形なので、条件に論理積を置き、真のときに「合格」、偽のときに「不合格」を返す式を選びます。
テクノロジ系 > コンピュータシステム > ソフトウェア
論理積で3つの条件(合計120点以上、A2が50点以上、B2が50点以上)をすべて満たす場合だけ真になります。さらに、IF関数で真のときに「合格」、偽のときに「不合格」を返しており、問題文の条件と一致します。
条件のまとめ方は論理積で正しいですが、条件が真のときに「不合格」、偽のときに「合格」を返しており、表示が逆なので不適切です。
論理和を使っているため、3条件のうち1つでも満たせば「合格」になってしまいます。問題は3条件すべてを満たす必要があるため不適切です。
論理和を使っているため条件のまとめ方が不適切です。さらに、条件が真のときに「不合格」を返しており、表示も逆なので不適切です。