ISBNとバーコード(2)

● バーコード ●

 商品にはバーコードがついていて、レジでその商品情報を読み取る・・・。

 知ってはいましたが、今まであまり気にもとめていませんでした。

 もちろん、書籍にもバーコードがついています。

 これは、拙著「大人の算数 子どもの数学」のバーコードです。

 (しつこく例にあげたのは、ひそかに(?)売り上げ向上に協力していただきたいためです。

 このホームページをご覧いただいている方だけでも、ぜひともよろしくお願いしますっ!)

 

大人の算数 子どもの数学』 (すばる舎)

装丁:田中 正人

  

 さて、バーコードは白のバーと黒のバーがたがいちがいに並んでいます。

 それで・・・?

 今まで、こんなふうに思っていました。

 同じ数には、同じ白黒バーのパターンが対応しているのだろう、って。

 それなら、話は簡単です。

 0から9までのパターンを作ればいいだけですから。

 ところが、ちがっていたんですね〜!

 


● JANコード ●

 最初、この「JAN」というのを見たとき、こう思いました。

 「Japan」の「JApa」だろうって。

 じつは、そうじゃなかったのです!

 でも、だれだって(?)そう思ってしまいますよね〜!

 これは「apanese rticle umbering」の略だったのです。

 まっ、そんなことはどうでもいいかも。

 それより、バーコードには、いろいろな種類があるらしいのです。

 その中で、書籍に使われているのが、これから説明するJANコードです。

 もっとも、書籍だけではないようですが・・・。

 

 さて、(書籍の)バーコードを見ると、黒のバーと白のバーにはいろいろな太さがあるのに気づきます。

 とは言っても、よく見ると、どちらも4種類ですが・・・。

 

         

これを、こう表すことにします。

         ■ ■■ ■■■ ■■■■  ■ ■■ ■■■ ■■■■ 
         1  2   3     4    1  2   3     4

 

<黒のバー>

 ・左端の最初のバー
 ・「7」の左上のバー
 ・左端の「9」の右上のバー
 ・一番右の「8」の上のバー

の順に太い。

<白のバー>

 ・左端から2番目のバー
 ・一番左の「8」の上のバー
 ・「7」の上のバー
 ・右の「3」の左上のバー

の順に太い。

 

 それから、こんなことにも気づきます。

 黒のバーの個数を数えてみると、どちらも30本です。

 

 数字はどちらも13個(桁)ですが、じつは最初の1個は特別な使い方をするのです。

 ですから、13個のうち、最初の1個をのぞいた12個分のバーしか並べないのです。

 そうすると、

    30÷12=2 あまり 6

となって、6本あまります。

 じつは、この6本は両端と真ん中に2本ずつ置いて、サンドイッチにするのです。

 そして、12個の数字を半々にして、6個ずつこの間に並べるのです。

 

 

 

さらに、

   30÷12=2 あまり 6 

で、商は2ですから、12個のどの数字にも黒のバーは2本わりあてられます。

 ちなみに、白のバーも2本わりあてます。

 そうすると、黒のバーが2本と白のバーが2本の合計4本のバーで、

1つの数を表すことになります。

 そうはいっても、太いバーばかり並ぶと、バーコードはいろいろな幅になってしまいます。

 そこで、1つの数を表す4本のバーの幅をそろえるのです。

 4本のバーを合わせた幅が、一番細いバーの7つ分の幅になるようにするのです。

 さて、そんな並べ方は何通りあるでしょうか。

 


● 順列 ●

 さてさて、4種類の太さの白のバーと黒のバーをたがいちがいに並べて、

幅の合計が7になる並べ方は、何通りあるか数えてみましょう。

 まず、(白黒白黒)と並べる方法と(黒白黒白)と並べる方法は、

白と黒を入れかえるだけですから、同じだけあります。

 そこで、とりあえず(白黒白黒)と並べる方法を考えます。

 まず(3211)と書いたら、(白黒白黒)の幅が(3211)の次のようなものだとします。

        (3211) <-----> ■■■■■

 

 それでは、全部書き並べてみましょう。

        (4111)

        (3211)  (3121)  (3112)

        (2311)  (2221)  (2212)  (2131)  (2122)  (2113)

        (1411)  (1321)  (1312)  (1231)  (1222)  (1213)
        (1141)  (1132)  (1123)  (1114)

 なんと、全部で20通りもあります。

 必要なのは、

     0,1,2,3,4,5,6,7,8,9

の10個の数字を表すものですから、20通りもあったら多すぎます。

 はっきりいって、2倍もあります。

 おっと、(白黒白黒)を(黒白黒白)に入れかえたものも入れると、40通りもあるのですから、

なんと4倍もあることになります。

 私などの素人考えだと、その中の一部を使えばいいと思ってしまうのですが、

なぜか、そうはしないのです。

 なんと、1つの数字に4通りならぬ3通りも対応させるのです。

 一人の人間に名前が3つあるようなものです。

 1つの数字に3通りも表し方があると、いつどれを使うかを決めなくてはなりません。

 まるで、ペンネームのように使いわけるのです。

 

 さて、その3通りの表し方は、こうなっています。

 黒の幅の合計が、奇数(dd)か偶数(ven)かで、分けるのです。

 おまけになぜか、黒から始まる方は偶数(Even)だけで、奇数(Odd)は使わないのです。

 

dd) ven) (Even)
(3211)  ■■■■■ (1123)  ■■■■■ (3211)  ■■■■■
(2221)  ■■■■■■ (1222)  ■■■■■■ (2221)  ■■■■■■
(2122)  ■■■■■■ (2212)  ■■■■■■ (2122)  ■■■■■■
(1411)  ■■■■ (1141)  ■■■■ (1411)  ■■■■■
(1132)  ■■■■■ (2311)  ■■■■■ (1132)  ■■■■■■
(1231)  ■■■■■ (1321)  ■■■■■ (1231)  ■■■■■■
(1114)  ■■■■ (4111)  ■■■■ (1114)  ■■■■■
(1312)  ■■■■■ (2131)  ■■■■■ (1312)  ■■■■■■
(1213)  ■■■■■ (3121)  ■■■■■ (1213)  ■■■■■■
(3112)  ■■■■■ (2113)  ■■■■■ (3112)  ■■■■■

 


● バーコードの右半分 ●

 さあて、いよいよバーコード作りです。

 なにしろ、1つの数字に表し方が3通りもあるのですから、

まずは、いつどれを使うかを決めなくてはなりません。

 

 

 

 さきほど、最初の1個は特別な使い方をするといいましたが、

じつはそれは左半分にしか影響しないのです。

 ですから、13個のうちの12個しか並べないのですが、

その12個の数字を半々にして、6個ずつこの間に並べるといっても、

右半分はかんたんなのです。

 そうです! さっきの表の右のものを使うだけです。

 

 ためしに、やってみましょう!

 まず、「784883993314」の「」は特別な使い方をするということで、のぞきます。

 のこりの「784883993314」を半々にして、

     「784883」 と 「993314

にします。

 そして、左半分は後回しにして、右半分だけを表を見ながら置きかえるとこうなります。

 

    <-----> (3112) <-----> ■■■■■

    <-----> (3112) <-----> ■■■■■

    <-----> (1411) <-----> ■■■■■

    <-----> (1411) <-----> ■■■■■

    <-----> (2221) <-----> ■■■■■■

    <-----> (1132) <-----> ■■■■■■

 

(Even)

(3211)  ■■■■■
(2221)  ■■■■■■
(2122)  ■■■■■■
(1411)  ■■■■■
(1132)  ■■■■■■
(1231)  ■■■■■■
(1114)  ■■■■■
(1312)  ■■■■■■
(1213)  ■■■■■■
(3112)  ■■■■■

 

すると、右半分はこうなります。

 ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

つまりは、こうです。

---------->

 

 同じようにして、こちらはこうなります。

---------->

 

 


● バーコードの左半分 ●

 さて、いよいよ左半分です。

 左半分には、表の左のものを使うのですが、今度は2通りあります。

dd) ven)
(3211)  ■■■■■ (1123)  ■■■■■
(2221)  ■■■■■■ (1222)  ■■■■■■
(2122)  ■■■■■■ (2212)  ■■■■■■
(1411)  ■■■■ (1141)  ■■■■
(1132)  ■■■■■ (2311)  ■■■■■
(1231)  ■■■■■ (1321)  ■■■■■
(1114)  ■■■■ (4111)  ■■■■
(1312)  ■■■■■ (2131)  ■■■■■
(1213)  ■■■■■ (3121)  ■■■■■
(3112)  ■■■■■ (2113)  ■■■■■

 さて、いつどちらを使うのでしょう。

 それを決めるのが、最初の数字なのです。

 「784883993314」だったら、最初の数字は「」です。

 「920030014008」だったら、最初の数字は「」です。

 この数字によって、「左(dd)」を使うか、「左(ven)」を使うかを決めるのです。

 

 しかも、6個の数字の「784883」や「920030」で、

「左(dd)」を使うか「左(ven)」を使うかを、半々にしたいとします。

 つまり、OOOEEEを並べかえたものにするのです。

 その並べかえたものは、

      6!             6・5・4・3・2・1
   ----------- = ------------------- = 20 (通り)
     3!3!    3・2・1×3・2・1

 となって、20通りあります。

 ということは、0,1,2,3,4,5,6,7,8,9の10個分より多すぎます。

 そう!またしても2倍もあります。

 そこで、「」から始まるものだけにすると、半分になってちょうどよくなります。

 

最初

dd と ven

OOOOOO
OOEOEE
OOEEOE
OOEEEO
OEOOEE
OEEOOE
OEEEOO
OEOEOE
OEOEEO
OEEOEO

 これで、準備が整いました。

 それでは、やってみましょう。

 「784883993314」だったら、最初の数字は「」ですから「OEEOEO」を使います。

 つまり、

    7 8 4 8 8 3
   
O E E  O E O

をそれぞれ使います。

dd) ven)
(3211)  ■■■■■ (1123)  ■■■■■
(2221)  ■■■■■■ (1222)  ■■■■■■
(2122)  ■■■■■■ (2212)  ■■■■■■
(1411)  ■■■■ (1141)  ■■■■
(1132)  ■■■■■ (2311)  ■■■■■
(1231)  ■■■■■ (1321)  ■■■■■
(1114)  ■■■■ (4111)  ■■■■
(1312)  ■■■■■ (2131)  ■■■■■
(1213)  ■■■■■ (3121)  ■■■■■
(3112)  ■■■■■ (2113)  ■■■■■

 そうすると、こうなります。

              ) <-----> (1312) <-----> ■■■■■

              ) <-----> (3121) <-----> ■■■■■

              ) <-----> (2311) <-----> ■■■■■■ 

              ) <-----> (1213) <-----> ■■■■■

              ) <-----> (3121) <-----> ■■■■■

              ) <-----> (1411) <-----> ■■■■

これで、左半分はこうなります。

 ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

つまりは、こうです。

---------->

 

 同じようにして、こちらはこうなるはずです。(やってみてください)

---------->

 

 それにしても・・・?

 これじゃ、まるで暗号のようですね〜!

 


HOME(もどる)

掲載内容の無断転載、転用、編集を禁じます。(c) 小林吹代
All Rights Reserved, (c)kobayashi fukiyo , 2001