基本情報技術者 2013年 秋期 午前(科目A) 問03
問題文
4桁の整数から、次の方法によって検査数字(チェックディジット)を計算したところ、となった。, , のとき, の値は幾らか。ここで、mod(, )は、をで割った余りとする。
検査数字:
選択肢
ア:0
イ:2
ウ:4(正解)
エ:6
検査数字の計算(4桁の整数)【午前2 解説】
要点まとめ
- 結論:与えられた条件で となるため、一桁の整数制約から唯一解は (選択肢ウ)です。
- 根拠: で 、 は の倍数なので となります。
- 差がつくポイント:mod の性質を利用して余りだけを考え、各項の加重和を正確に計算して桁制約(一桁=0〜9)で確定します。
正解の理由
与えられた検査数字の定義は
です。
問題では 、よって加重和の部分は となります。
したがって です。 は の倍数なので 、ゆえに となり、問題文で とあるため 。
は 0〜9 の一桁整数なので唯一の値は 、よって正解は ウ です。
問題では 、よって加重和の部分は となります。
したがって です。 は の倍数なので 、ゆえに となり、問題文で とあるため 。
は 0〜9 の一桁整数なので唯一の値は 、よって正解は ウ です。
よくある誤解
- 「加重項の合計を忘れて 40 を見落とす」: や の計算ミスで総和がずれると誤答になります。
- 「mod の性質を使わずに全体を10で割る計算を考え過ぎる」: を使えば簡単です。
- 「 が10以上と誤解する」:問題の は桁を示す一桁の整数(0〜9)であることを見落としやすいです。
解法ステップ
- 与えられた値を代入して加重和を求める:。
- これらを合計して 。加重和は 。
- 検査数字の定義から 。 は の倍数なので 。
- 問題で なので 。一桁の は のみ。
選択肢別の誤答解説
- ア: 0
仮に とすると で 、 となり問題の と合いません。 - イ: 2
なら で 、 となり不適合です。 - ウ: 4(正解)
なら で 、問題の条件と一致します。 - エ: 6
なら で 、 となり不適合です。
補足コラム
検査数字(チェックディジット)は誤入力検出の基本技術で、加重和に対して剰余(mod)を取る方式は広く使われます。今回のように単純な加重和と は扱いやすく実装も簡単ですが、伝送誤りや桁入れ替えをより高い確率で検出したい場合は Luhn 法や加重係数を変える、あるいはより大きな法(mod 11 等)を使う方法があります。
FAQ
Q. なぜ を に変えられるのですか?
A. 一般に が成り立ち、 は の倍数なので余りは 0 となり になります。
A. 一般に が成り立ち、 は の倍数なので余りは 0 となり になります。
Q. が負や2桁でも解けますか?
A. 問題では は 4 桁の整数の千の位を表す一桁の数字(0〜9)と解釈します。もし範囲が異なれば同じ剰余式から一般解 を得られます。
A. 問題では は 4 桁の整数の千の位を表す一桁の数字(0〜9)と解釈します。もし範囲が異なれば同じ剰余式から一般解 を得られます。
Q. 加重係数が異なるとどう変わりますか?
A. 加重係数を変えると合計値が変わり、剰余条件も変化します。基本は同じで最終的に剰余式を解く作業になります。
A. 加重係数を変えると合計値が変わり、剰余条件も変化します。基本は同じで最終的に剰余式を解く作業になります。
関連キーワード: チェックディジット、検査数字、モジュロ演算、加重和、余り、Luhn法、誤り検出、検査値設計

\ せっかくなら /
基本情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

