以上是算法简要说明,以下代码为Python实现,不过注意代码中的N=15,不是16。
# GB/T 17710 双模校验算法
# QQ 3257132998 def GB_Code(str):
str=str.replace(' ','') p=10
for j in range(1,15):
numerator=(p+int(str[j-1]))%10
if(numerator==0):
numerator=10
p=(numerator*2)%11 return 11-p print GB_Code('')