b536. 國際標準書號 ISBN
Tags :
Accepted rate : 145人/161人 ( 90% ) [非即時]
評分方式:
Tolerant

最近更新 : 2015-09-13 23:54

Content

這是全國中等學校102學年度商業類科學生技藝競賽「程式設計」的試題 P41


國際標準書號( International Standard Book Number,簡稱 ISBN ),是為因應圖書出版管理的需要,所發展的編號制度,由一組冠有"ISBN" 代號的10 位數碼或13 位數碼所組成,用以識別
出版品所屬國家、語言或區位、出版機構、書序號及檢查號。13 碼的國際標準書號通常被分成5 個部分,10 碼為4 個部份,其不同部份以連字號(-)分開,位數是可變化的,連字號在
系統處理上可被忽略。ISBN10 結構如下:

ISBN10 結構
國家、語言或區位代碼版機構代碼書序號檢查號
9862765666

(1)國家、語言或區位代碼:用以區別出版者的國別地區、語文或其他相關群體(組織)(臺灣是957 或986)。
(2)出版社代碼:此號為各出版機構的代號,其號碼包括二位至五位數字不等(如157、204、421、442、7198、7323、8573)。
(3)書序號:如277 或08。
(4)檢查號:此號由單一數字或英文大寫字母"X",用以核對國際標準書號的正確性(如X 或4)。

ISBN-10 檢查號的計算方法: (註記:mod 運算為取餘數)
假設某國際標準書號號碼前9 位是:0-201-55802-
(1)計算加權和S: S = 0*10+2*9+0*8+1*7+5*6+5*5+8*4+0*3+2*2 = 116
(2)計算餘數M:M = S mod 11 = 116 mod 11 = 6
(3)計算差 N : N = 11 - M = 11 - 6 = 5
如果 N = 10,則檢查號是字母“X”
如果 N = 11,則檢查號是數字“0”
如果 N 為其他數字,檢查號是數字N。
所以,本書的檢查號是 5。 ISBN10 書號為0-201-55802-5。

ISBN-13 檢查號的計算方法:
假設某國際標準書號號碼前 12 位是:978-0-201-55802-
(1)計算加權和S: S = 9*1+7*3+8*1+0*3+2*1+0*3+1*1+5*3+5*1+8*3+0*1+2*3 = 91
(2)計算餘數M:M = S mod 10 = 91 mod 10 = 1
(3)計算差 N : N = 10 - M = 10 - 1 = 9
如果 N = 10,則檢查號是數字“0”。
如果 N 為其他數字,檢查號是數字N。
所以,本書的檢查號是 9。 ISBN13 書號為978-0-201-55802-9。

Input

第 1 列的數字n 代表有幾筆測試資料, ,第二列起為測試資料,之後每列為每筆國際標準書號 ISBN 的測試資料,每列的測試資料不一定會有連字號(-)分隔,例如  9780201558029。

Output

每筆測試資料輸出一列。若為有效的國際標準書號 ISBN,則輸出T,若為無效則輸出為F。

Sample Input #1
6
0-201-55802-5
9780201558029
986-276-566-6
978-986-276-566-1
957-442-355-7
957-442-355-4
Sample Output #1
T
T
T
T
T
F
測資資訊:
記憶體限制: 64 MB
公開 測資點#0 (25%): 1.0s , <1K
公開 測資點#1 (25%): 1.0s , <1K
公開 測資點#2 (25%): 1.0s , <1K
公開 測資點#3 (25%): 1.0s , <1K
Hint :
Tags:
出處:
102學年度商業類程式設計競賽 [管理者: p3a_owhj (阿普二信) ]

Status Forum 排行

ID User Problem Subject Hit Post Date
沒有發現任何「解題報告」