阅读以下标准书号校验码的技术说明和程序流程图,根据要求回答问题1至问题3。 [说明] 为实现图书的国际统一编码,便于实现计算机化的图书管理,每本正式出版的图书都印有国际标准书号。标准书号由“ISBN”、10个数字(0-9)组成,其格式如下。

admin2009-02-15  46

问题 阅读以下标准书号校验码的技术说明和程序流程图,根据要求回答问题1至问题3。
   [说明]
   为实现图书的国际统一编码,便于实现计算机化的图书管理,每本正式出版的图书都印有国际标准书号。标准书号由“ISBN”、10个数字(0-9)组成,其格式如下。
   ISBN  组号-出版者号-书名号-校验码
   其中,校验码是根据前面9个数字计算得到的,用于计算机自动校验。假设标准书号的10个数字依次是a(1),a(2),…,a(10),则校验码a(10)的设置应使S=1O*a(1)+9*a(2)+8*a(3)+…+1*a(10)能被11整除。如果校验码a(10)应设置成10,则规定以“X”表示之。
   例如,《软件设计师考试考前冲刺预测卷及考点解析》的标准书号为:ISBN 7-121-05027-5。第1段上的数字“7”是国际ISBN中心分配给中国ISBN中心管理的组号;第2段上的“121”表示电子工业出版社。标准书号的校验过程如图3-16所示,计算校验码的过程如图3-17所示。其中,Mod(S,11)表示S除以 11得到的余数。

选项

答案制订标准书号的目的是实现图书的国际统一编码,以便于实现计算机化的图书管理,使出版社内的医书管理、书库中的图书管理及书店的图书销售管理具有更高的工作效率和管理水平。标准书号由“ISBN”, 10个数字(0-9)组成,采用“ISBN 组号—出版者号—书名号—校验码”的格式。其中,出版者号规定为 2-7位数字。对较大的出版社分配比较短的码,留出较长的书名号为更多的书进行编码。 标准书号的最后一位是校验码。设置校验码可以大大减少录入错误造成的管理混乱。校验码一般由计算机程序产生。当操作人员录入前9个数字后,计算机就会自动启动计算校验码的过程,输出正确的校验码。在书店(或书库),不论是建库还是查询检索,在手工输入带校验码的标准书号后,计算机就会自动启动校验过程,判断是否输入错误。 在图3-17计算校验码的过程中,首先要计算部分S值,即S=10*a(1)十9*a(2)+8*a(3)+…+2*a (9)。此时需要使用循环处理。在循环开始之前,应设置初始值S=0。在循环体内,应执行语句“S+=(11-I) *a(I)”或“S+=(1+I)*a(10-I)”(注意,其中的乘号“*”不要丢失)。该循环应对循环变量I=1~9进行(步长默认为1)控制,因此,(2)空缺处应填入“9”,(3)空缺处所填写的内容是“S+(11-I)*a[I]->S”或“S+(1+I)*a(10-I)->S”。 接着再计算该S值除以11的余数R。显然0≤R≤10。 由于“校验码a(10)的设置应使 S=10*a(1)+9*a(2)+8*a(3)…+1*a(10)能被11整除”,即余数R与校验码之和应能被11整除,因此校验码应等于MOD(11-R,11),即(4)空缺处所填写的内容是“MOD(11-R,11)”。若读者在该空缺处填写“MOD(11-R)”,则是没有考虑R=0这一情况。当校验码等于10时,还应以符号×表示。 在对标准书号的校验过程(图3-16)中,首先要将校验码为×的情况转换成数据10,以便于后续计算。为了计算S=10*a(1)+9*a(2)+8*a(3)+…+1*a(10),需要使用循环处理。在循环开始之前,应设置初始值S=0,循环变量I从1到10(步长默认为1)。在循环体内,应执行语句“S+=(11-I)*a(1)”或“S+=I*a(11 -I)”。因此(1)空缺处所填写的内容是“(11-I)*a(I)”或“I*a(11-I)”。 在图3-16中,计算出S值之后,还应判断S除以11的余数是否为0。若余数为0,说明S能够被11整除,表示校验结果正确;若余数不为0,则说明输入的标准书号有错(可能是校验码输入有错,也可能是前面的数字输入有错)。。此时计算机应输出相应的错误提示信息,提醒信息录入人员仔细校对改正。

解析
转载请注明原文地址:https://kaotiyun.com/show/AEjZ777K
0

最新回复(0)