P1055 ISBN號碼
阿新 • • 發佈:2018-06-07
HA str return 識別碼 DC col gets IT right
題目的思路很簡單,先將9個數字求和,然後對11取余,如果余數等於10則識別碼為‘X’
否則為余數,在判斷是不是等於所輸入數字字符串中最後一個數的值;
#include<iostream> #include<bits/stdc++.h> #include<algorithm> using namespace std; int main() { char a[20],t; int sum=0,flag=1; for(int c=0;c<13;c++) { cin>>a[c]; }/*輸入字符串*/for(int i=0;i<strlen(a)-1;i++) { if(a[i]>=‘0‘&&a[i]<=‘9‘) { sum+=flag*(a[i]-‘0‘); flag++; } }/*求和*/ t=sum%11+‘0‘; if(t==10+‘0‘) t=‘X‘;/*確認識別碼*/
/*判斷是否相等*/
if(t==a[12] { cout<<"Right"; } else { for(int j=0;j<strlen(a)-1;j++) { cout<<a[j]; } cout<<t; } return 0; }
這道題之所以寫是因為我剛開始輸入數組用的是gets,為什麽錯了呢,因為題目中已經規定了字符串的格式了。
P1055 ISBN號碼