ITパスポート試験 平成22年度 秋の問61に挑戦しましょう。

 

表計算ソフトを用いて社員コード中のチェックデジット検算する。社員コードは3けたの整数値で、最下位の1けたをチェックディジットとして利用しており、上位2けたのを各けたの数を加算した値の1の位と同じ値が設定されている。セルB2に社員コードからチェックディジットを算出する計算式を入力し、セルB2をセルB3〜B5に複写するとき、セルB2に入力する計算式のうち、適切なものはどれか。

 

ア 10 – 整数部 ( A2 / 100) + 剰余 ( 整数部 ( A2 / 10 ), 10 )

イ 剰余 ( 10 – 整数部 ( A2 / 100 ) + 整数部 ( A2 / 10 ) , 10 )

ウ 剰余 ( 整数部 ( A2 / 100 )  + 剰余 ( 整数部 ( A2 /10 ) , 10), 10)

エ 整数部 (( 整数部 ( A2 / 100 ) + 整数部 (A2 /10 ) )  / 10 )

 

この問題では

  • 整数部
  • 剰余

という2つの関数が扱われていますので、まずはこちらを復習しておきましょう。

 

整数部の使い方は以下の通り。

整数部(算術式)

入力した算術式の整数部分を出力する関数でありまして、例えば、

整数部(5.7)

だったら、入力した5.7の整数部「5」が出力されます。

 

一方、剰余関数の使い方はこちら。

 

剰余(算術式1, 算術式2)

 

1つ目に入れた値を、2つ目の値で割った時の「余り」を返します。

例えば、

剰余(11, 2)

なら「11÷2」で余りが「1」になりますので、1が出力されます。

 

さて、これを踏まえた上で選択肢をみましょう。

ア 10 – 整数部 ( A2 / 100) + 剰余 ( 整数部 ( A2 / 10 ), 10 )

イ 剰余 ( 10 – 整数部 ( A2 / 100 ) + 整数部 ( A2 / 10 ) , 10 )

ウ 剰余 ( 整数部 ( A2 / 100 )  + 剰余 ( 整数部 ( A2 /10 ) , 10), 10)

エ 整数部 (( 整数部 ( A2 / 100 ) + 整数部 (A2 /10 ) )  / 10 )

はい。あまりにもバラバラで難しすぎますね。

このように「選択肢に関連性・法則がない」問題では、選択肢に実際の値を代入して検証していくしかありません。

 

問題では「社員コードの上位2けたのを各けたの数を加算した値の1の位と同じ値」をチェックディジットとしていると書かれていますね。

よう社員コードの「100の位」と「10の位」を足した値の「1の位」がチェックディジットになるはず。

例えば、一番上の社員コード「370」だったら、100の位「3」と10の位「7」を足して「10」。

その1の位ですから「0」がチェックリストになるはず。

さて、ということで、実際にA2の値「370」を選択肢の式に代入して「0」になる選択肢を探します。

 

 

まず選択肢の「ア」から。

 10 – 整数部 ( A2 / 100) + 剰余 ( 整数部 ( A2 / 10 ), 10 )

=  10 – 整数部 ( 370 / 100) + 剰余 ( 整数部 ( 370 / 10 ), 10 )

=  10 – 整数部 ( 3.7) + 剰余 ( 整数部 ( 37 ), 10 )

= 10 – 3 + 剰余 (37, 10 )

= 7 + 7

= 14

はい、これはゼロにならないからダメですね。

 

続いて選択肢「イ」。

剰余 ( 10 – 整数部 ( A2 / 100 ) + 整数部 ( A2 / 10 ) , 10 )

= 剰余 ( 10 – 整数部 ( 370 / 100 ) + 整数部 ( 370 / 10 ) , 10 )

= 剰余 ( 10 – 整数部 ( 3.7 ) + 整数部 ( 37 ) , 10 )

= 剰余 ( 10 – 3 + 37 , 10 )

= 剰余 ( 44 , 10 )

= 4

 

はい、これも0にならないので、アウト。

 

次は選択肢「ウ」。

剰余 ( 整数部 ( A2 / 100 )  + 剰余 ( 整数部 ( A2 /10 ) , 10), 10)

= 剰余 ( 整数部 ( 370 / 100 )  + 剰余 ( 整数部 ( 370 /10 ) , 10), 10)

= 剰余 ( 整数部 ( 3.7)  + 剰余 ( 整数部 ( 37) , 10), 10)

= 剰余 ( 3 + 剰余 ( 37 , 10), 10)

= 剰余 ( 3 + 7, 10)

= 剰余 ( 10, 10)

= 0

はい、きましたね。0。

選択肢「ウ」が正解の可能性が濃厚になりましたが、念のために最後の選択肢「エ」も検証しておきましょうか。

整数部 (( 整数部 ( A2 / 100 ) + 整数部 (A2 /10 ) )  / 10 )

= 整数部 (( 整数部 ( 370 / 100 ) + 整数部 (370 /10 ) )  / 10 )

= 整数部 (( 整数部 ( 3.7 ) + 整数部 (37 ) )  / 10 )

= 整数部 (( 3 + 37 )  / 10 )

= 整数部 (40 / 10 )

= 整数部 (4 )

= 4

はい、ゼロじゃないっすね。

ってことで、上記地道な検証の結果、選択肢「ウ」が正解と判明!

 

この問題のように、選択肢から問題が求めているものがわからず、選択肢がバラバラすぎるならば、

各選択肢に具体的な数値を当てはめて検証する

という手法が手っ取り早いです。

是非試しみてください。

 

それでは!

Ken