亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

哪位大神能幫忙給我這道題的代碼,拜托了

哪位大神能幫忙給我這道題的代碼,拜托了

C++
死神的蘋果 2016-08-25 06:18:41
ISBN碼驗證(類)描述?10位數的ISBN系統是由組號、出版者號、書序號、校驗號四部分組成的,比如0-901690-54-6,變為13位數的ISBN就是在10位數的ISBN前面加上3位EAN(歐洲商品編號)的圖書產品代碼978。這樣,上面的ISBN編號就變成了五部分,如978-0-901690-54-6。校驗號的重新計算,也將根據對前面的12位數而不是9位數的計算而得出。13位數的系統與10位數的系統是完全兼容的。10位數ISBN的結構? ? ? 現行的ISBN由10位數字組成,這10位數字由4組數字組成,中間用“-”相連,每組數字都有不同的含義。? ? ? 第一組號碼是地區號,又叫組號,最短的只有一位數字,最長的達五位數字,大體上兼顧文種、國別和地區。0、1代表英語,使用這兩個代碼的國家有:澳大利亞、加拿大、愛爾蘭、新西蘭、波多黎各、南非、英國、美國、津巴布韋等;2代表法語,法國、盧森堡以及比利時、加拿大和瑞士的法語區使用該代碼;3代表德語,德國、奧地利和瑞士德語區使用該代碼;4是日本出版物的代碼;5是俄羅斯出版物的代碼;7是中國出版物使用的代碼。? ? ? 第二組: 出版社代碼。由國家或地區的ISBN中心設置并分給各個出版社。? ? ? 第三組:書序碼。該出版物代碼,是出版者分配給每一個出版物的編號。? ? ? 第四組:計算機校驗碼。校驗碼是ISBN號的最后一位數值,它能夠校驗出ISBN號是否正確。校驗碼只能是1位數,當為10時,記為羅馬數字X?!?校驗碼的計算方法·?1. 假設某ISBN號碼前11位是:7-309-04547; ? ??2. 計算加權和S:S=7×10+3×9+0×8+9×7+0×6+4×5+5×4+4×3+7×2 = 226; ? ??3. 計算S÷11的余數M:M = 226 mod 11 = 6; ? ??4. 計算11-M的差N:N = 11 ? 6 = 5 ? ?· 如果N=10,校驗碼是字母“X”; ? ??· 如果N=11,校驗碼是數字“0”; ? ??· 如果N為其他數字,校驗碼是數字N。 ? ?所以,本書的校驗碼是5。13位ISBN的最后一位校驗位的加權算法與10位ISBN的算法不同。具體算法是:用1分別乘ISBN的前12位中的奇數位,用3乘以偶數位,成績之和以10為模,用10減去此模,即可得到校驗位的值,其值范圍應該為0-91. 假設某13位ISBN號碼前15位(包含‘-’符號)是:987-7-309-04547; ? ??2. 位置為123-4-567-89(10)(11)(12) ? ??3. 計算加權和S:S=9×1+8×3+7×1+7×3+3×1+0×3+9×1+0×3+4×1+5×3+4×1+7×3 = 117; ? ??4. 計算S÷10的余數M:M = 117 mod 10 = 7; ? ??5. 計算10-M的差N:N = 10 -7 = 3 ? ? (如果10-M的值為10則校驗碼取0)6. 所以,本書的13位ISBN的校驗碼是3。輸入一個13位ISBN代碼,驗證其代碼的正確性。n如果正確,則輸出“YES”,否則輸出錯誤信息“NO”。程序必須采用類的方法完成,程序中必須含有和使用三個基本類成員函數:input()輸入數據,computer()計算結果,show()顯示結果,函數的返回值和參數根據需要自己可以確定需要與否,如果不用類的方法或沒有使用上面的函數,該題不給分。輸入每行一個測試數據,表示一個13位ISBN的號碼(包含‘-’符號)。輸出根據驗證規則,計算其正確性,如果正確,則輸出“YES”,否則輸出錯誤信息“NO”。樣例輸入978-7-302-08599-7樣例輸出YES
查看完整描述

1 回答

  • 1 回答
  • 0 關注
  • 1581 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號