ITパスポート講座の講師ブログ

よくあるご質問 -チェックディジットの計算-

皆さん、こんにちは。

 

チェックディジットとはデータの最後に付け加えられる数値・文字のことです。

データの正確性を担保するために、データから計算される数値・文字をデータの最後に付け加えます。ITパスポート試験では、チェックディジットを計算させる問題も出題されています。1つ例を挙げてみます。

 

問題)次の方式によって求められるチェックデイジットを付加すると73940となる。ここでデータを7394、重み付け定数を1234、基数を11とする。

〔方式〕
(1)データと重み付け定数の各けたの積を求め、その和を求める。
(2)和を基数で割って、余りを求める。
(3)基数から余りを減じ、その結果の1の位をェックデイジットとしてデータの末尾に

付加する。

 

〔方式〕の通り計算してみます。

 

(1) データと重み付け定数の各けたの積を求め、その和を求める。

  データ 7 3 9 4
    × × × ×
  定数 1 2 3 4
   
  7 6 27 16
         
    56  

 

(2)和を基数で割って、余りを求める。

和÷基数=56÷11=5余り1

 

(3)基数から余りを減じ、その結果の1の位をチェックディジットとする。

基数-余り=11-1=10

→1の位は「0」

→チェックディジットは「0」となる。

 

チェックディジットを元のデータの末尾に付加すると「73940」となります。

 

元のデータが「7394」のときのチェックディジットが「0」なのであり、「73941」や「73942」ということはあり得ないわけです。もし、コンピュータ利用者が「73941」や「73942」を入力しようとすると、あり得ない数値としてコンピュータが入力ミスを指摘することができ、データの正確性を担保することができるようになるわけです。