ISBN 10位校验码的计算方法

前端之家收集整理的这篇文章主要介绍了ISBN 10位校验码的计算方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

国际标准书号InternationalStandardBookNumber,简称ISBN),常用的有10位、13位,从2007年1月1日起国际标准正式修订为13位。


10位计算方法如下:

1、假设某国际标准书号号码前9位是:7-309-04547;

2、计算加权和

3、计算的余数

4、计算的差

  • 如果,校验码是字母“X”;
  • 如果,校验码是数字“0”;
  • 如果为其他数字,校验码是数字。

所以,本书的校验码是5,故该国际标准书号为:7-309-04547-5;

VB方法如下:

isbn = InputBox("Please input ISBN","ISBN")
 k = ""
 For i = 1 @H_301_118@To Len(isbn)
     s = Mid(isbn,i,1)
     @H_301_118@If s <> "-" @H_301_118@Then
         k = k & s
     @H_301_118@End @H_301_118@If
 @H_301_118@Next
 @H_301_118@If Len(k) <> 9 @H_301_118@Then
     MsgBox "Wrong Input"
 @H_301_118@If
 a = 0
 @H_301_118@To 9
     a = a + (11 - i) *Mid(k,1)
 @H_301_118@Next
 a = a Mod 11
 a = 11 - a
 @H_301_118@If a = 10 @H_301_118@Then
     isbn = isbn & "-X"
 @H_301_118@Else
     @H_301_118@If a = 11 @H_301_118@Then
         isbn = isbn & "-0"
     @H_301_118@Else
         isbn = isbn & "-" & a
     @H_301_118@If
 MsgBox isbn



13位或者其他解释见:http://zh.wikipedia.org/wiki/%E5%9B%BD%E9%99%85%E6%A0%87%E5%87%86%E4%B9%A6%E5%8F%B7

猜你在找的VB相关文章