出典:平成28年度 ITパスポート試験(IP) 春期分 問80
予備知識
| 用語 | 意味 |
|---|---|
| 表計算ソフト | Excelっぽいソフトの総称 |
| ワークシート | 表計算ソフトの作業画面。マス目が並んだ表 |
| セル | Excelのマス目 |
問題
| 問題文 |
|---|
表計算ソフトを用いて,買い物金額に応じたポイント数を計算する。買い物金額が1,000円以下では買い物金額の1%,買い物金額が1,000円を超え3,000円以下では買い物金額の2%,買い物金額が3,000円を超える場合は買い物金額の3%のポイントを付与する。ワークシートのセル A2 に買い物金額が入力されるとき,ポイント数が表示されるセル B2 に入る数式はどれか。ここで,ポイント数の小数点以下は切捨てとする。![]() |
ピヨ意訳:買い物金額に応じて付与されるピヨポイトカードのポイント数をExcelで計算するよ。ピヨポイントカードは買い物金額が1,000円以下の場合は買い物金額の1%、1,000円より多くて3,000円以下の場合は買い物金額の2%、3,000円を超える場合は買い物金額の3%のポイントが付与されるよ。セル「A2」に買い物金額を入れるとセル「B2」にポイント数が表示されるようにしたいんだけど「B2」セルには、どんな計算式を入れれば良い?ちなみにポイント数の小数点以下は切り捨てるよ。![]() |
| 解答選択肢 | |
|---|---|
| ア | IF(A2≧3000, 整数部(A2*3/100), IF(A2≧1000, 整数部(A2/100), 整数部(A2*2/100))) |
| ピヨ意訳:=IF(A2>=3000, ROUNDDOWN(A2*3/100,0), IF(A2>=1000, ROUNDDOWN(A2/100,0), ROUNDDOWN(A2*2/100,0))) | |
| イ | IF(A2>3000, 整数部(A2*3/100), IF(A2>1000, 整数部(A2/100), 整数部(A2*2/100))) |
| ピヨ意訳:=IF(A2>3000, ROUNDDOWN(A2*3/100,0), IF(A2>1000, ROUNDDOWN(A2/100,0), ROUNDDOWN(A2*2/100,0))) | |
| ウ | IF(A2≦1000, 整数部(A2/100), IF(A2≦3000, 整数部(A2*2/100), 整数部(A2*3/100))) |
| ピヨ意訳:=IF(A2<=1000, ROUNDDOWN(A2/100,0), IF(A2<=3000, ROUNDDOWN(A2*2/100,0), ROUNDDOWN(A2*3/100,0))) | |
| エ | IF(A2<1000, 整数部(A2/100), IF(A2<3000, 整数部(A2*2/100), 整数部(A2*3/100))) |
| ピヨ意訳:=IF(A2<1000, ROUNDDOWN(A2/100,0), IF(A2<3000, ROUNDDOWN(A2*2/100,0), ROUNDDOWN(A2*3/100,0))) | |

正解
| 正解 | |
|---|---|
| ウ | IF(A2≦1000, 整数部(A2/100), IF(A2≦3000, 整数部(A2*2/100), 整数部(A2*3/100))) |
| ピヨ意訳:=IF(A2<=1000, ROUNDDOWN(A2/100,0), IF(A2<=3000, ROUNDDOWN(A2*2/100,0), ROUNDDOWN(A2*3/100,0))) | |
ピヨピヨ解説
条件分岐処理における分岐する条件の問題ですね。
問題文に示されているポイント付与の条件は
1.1,000円以下(~1,000円):1%
2.1,000円を超えて3,000円以下(1,001円~3,000円):2%
3.3,000円を超える(3,001円~):3%
です。
それを踏まえて、それぞれの選択肢を見ていきましょう。
「ア:IF(A2≧3000, 整数部(A2*3/100), IF(A2≧1000, 整数部(A2/100), 整数部(A2*2/100)))」は
1.3,000円以上(3,000円~):3%
2.3,000円未満で1,000円以上(1,000円~2,999円):1%
3.1,000円未満(~999円):2%
です。
問題文の条件とは違いますね。
ちなみに「2」の条件に「3,000円未満で」が付いているのは、3,000円以上だと「1」の条件に当てはまるからです。
「イ:IF(A2>3000, 整数部(A2*3/100), IF(A2>1000, 整数部(A2/100), 整数部(A2*2/100)))」は
1.3,000円を超える(3,001円~):3%
2.3,000円以下で1,000円を超える(1,001円~3,000円):1%
3.1,000円以下(~1,000円):2%
です。
問題文の条件とは違いますね。
ちなみに「2」の条件に「3,000円以下で」が付いているのは、3,000円を超えると「1」の条件に当てはまるからです。
「ア」と「イ」は論外ですね。
パッと見でも「1%」と「2%」が逆にならないとマズいでしょう。
「ウ:IF(A2≦1000, 整数部(A2/100), IF(A2≦3000, 整数部(A2*2/100), 整数部(A2*3/100)))」は
1.1,000円以下(~1,000円):1%
2.1,000円を超えて3,000円以下(1,001円~3,000円):2%
3.3,000円を超える(3,001円~):3%
です。
良さそうですね。
ちなみに「2」の条件に「1,000円を超えて」が付いているのは、1,000円以下だと「1」の条件に当てはまるからです。
「エ:IF(A2<1000, 整数部(A2/100), IF(A2<3000, 整数部(A2*2/100), 整数部(A2*3/100)))」は
1.1,000円未満(~999円):1%
2.1,000円以上で3,000円未満(1,000円~2,999円):2%
3.3,000円以上(3,000円~):3%
です。
惜しい感じですね。
問題文には「1,000円以下の場合は買い物金額の1%」と書いてあります。
1,000円ピッタリのときは1%です。2%では ありません。
ついでに「買い物金額が3,000円を超える場合は買い物金額の3%のポイントを付与する」とも書いてあります。
3,000円ピッタリのときは2%です。3%では ありません。
ちなみに「2」の条件に「1,000円以上で」が付いているのは、1,000円未満だと「1」の条件に当てはまるからです。
ということで「ウ:IF(A2≦1000, 整数部(A2/100), IF(A2≦3000, 整数部(A2*2/100), 整数部(A2*3/100)))」が正解です。







