全文预览

noip模拟总结

上传者:非学无以广才 |  格式:ppt  |  页数:15 |  大小:291KB

文档介绍
组中的规定位上字符转换成数字,然后根据识别码公式计算出正确的识别码,并与 isbn[12] 中字符进行比较。 识别码计算公式如下: ( (isbn[0]-'0')+(isbn[2]-'0') * 2+(isbn[3]-'0') * 3+(isbn[4]- '0') * 4+(isbn[6]-'0') * 5+(isbn[7]-'0') * 6+(isbn[8]- '0') * 7+(isbn[9]-'0') * 8+(isbn[10]-'0') * 9 ) %11 ?核心代码如下: char isbn[20]; int idCode =0; cin >> isbn ; //以字符串的形式读入 isbn 码到数组 isbn 中 idCode = (isbn[0]-'0')+(isbn[2]-'0') * 2+(isbn[3]-'0') * 3+(isbn[4]-'0') * 4+(isbn[6]- '0') * 5+(isbn[7]-'0') * 6+(isbn[8]-'0') * 7+(isbn[9]-'0') * 8+(isbn[10]-'0') * 9; idCode = idCode%11; //计算识别码 if ( idCode <10) { if ( isbn[12] == idCode+'0' ) //识别码正确 cout << "Right" << endl ; else { //识别码不正确 isbn[12] = idCode+'0'; cout << isbn << endl ;} }else if (isbn[12] == 'X'){ //识别码正确 cout << "Right" << endl ; }else{ //识别码不正确 isbn[12] = 'X'; cout << isbn << endl ; }

收藏

分享

举报
下载此文档