标准箱号构成基本概念: 标准集装箱箱号由11位编码组成,包括三个部分:
1、 第一部分由4位英文字母组成。
2、 第二部分由6位数字组成。
3、 第三部分为校验码(Check Digit)由前4位字母和6位数字经过校验规则运算得到,用于识别在校验时是否发生错误。即第11位数字。
根据校验规则箱号的每个字母和数字都有一个运算的对应值。箱号的前10位字母和数字的对应值从0到Z对应数值为0到38,11、22、33不能对11取模数,所以要除去。
4、第N位的箱号对应值再分别乘以2^(N-1) (N=1,2,3………..10) 例如:箱号为CBHU3202732的集装箱它的第1位代码为C, 它的代码值=代码的对应值×2^(1-1) =13x2^0=13×1=13。 类推第2位代码为B
它的代码值=代码的对应值×2^(2-1) =12×2^1=12x2=24 以此类推得到箱号前10位代码的代码值。 将前10位的代码值乘积累加后对11取模
箱号为CBHU3202732的集装箱前10位箱号的代码累加值=4061,取11的模后为2,就是这个箱号第11位的识别码的数值。
以此类推,就能得到校验码。
A=10 B=12 C=13 D=14 E=15 F=16 G=17 H=18 I=19 J=20 K=21 L=23 M=24 N=25 O=26 P=27 Q=28 R=29 S=30 T=31 U=32 V=34 W=35 X=36 Y=37 Z=38
自己参考了一下类似的例子 写出来 有改进的地方希望大神们可以提出来