a020: 身分證檢驗
題目:http://zerojudge.tw/ShowProblem?problemid=a020
如果程式碼又更好想法可以分享喔~~
程式碼:
如果程式碼又更好想法可以分享喔~~
程式碼:
import java.util.Scanner;
public class a020 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
char [] data = {'A','B','C','D','E','F','G','H','I','J','K','L'
,'M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'};
String [] data1 = {"10","11","12","13","14","15","16","17","34","18",
"19","20","21","22","35","23","24","25","26","27","28","29","32"
,"30","31","33"};
while(sc.hasNext()){
String id = sc.nextLine();
char var = id.charAt(0);
char [] b = new char[9];
String a="";
int num=0;
for(int i=0;i<data.length;i++){
if(var == data[i]){
a += data1[i];
}
}
num += ((int)a.charAt(1)-48)*9;
num += ((int)a.charAt(0)-48);
for(int i=0;i<id.length()-1;i++){
b[i] = id.charAt(i+1);//還是char型態
for(int j=8;j>=0;j--){
if(i+j==8){
num += (int)(b[i]-48)*j;
if(j==0){
num += (int)(b[i]-48);
}
}
}
}
if(num%10==0){
System.out.println("real");
}else{
System.out.println("fake");
}
}
}
}

留言
張貼留言