diff --git a/tutorial/ValidateHKID.java b/tutorial/ValidateHKID.java new file mode 100644 index 0000000..1ff200b --- /dev/null +++ b/tutorial/ValidateHKID.java @@ -0,0 +1,36 @@ +package tutorial; + +import java.util.Scanner; + +public class ValidateHKID { + public static void main(String[] args) { + + Scanner input = new Scanner(System.in); + System.out.println("Please enter your first 7 character of your HKID card number."); + String str = input.nextLine(); + + char[] strHKID; + int int_Sum; + int int_Code; + strHKID = str.toCharArray(); + strHKID[0] = Character.toUpperCase(strHKID[0]); + int_Sum = ( (int)strHKID[0] -64 ) *8; + int_Sum = int_Sum + ( (int)strHKID[1] -48 ) *7; + int_Sum = int_Sum + ( (int)strHKID[2] -48 ) *6; + int_Sum = int_Sum + ( (int)strHKID[3] -48 ) *5; + int_Sum = int_Sum + ( (int)strHKID[4] -48 ) *4; + int_Sum = int_Sum + ( (int)strHKID[5] -48 ) *3; + int_Sum = int_Sum + ( (int)strHKID[6] -48 ) *2; + int_Code = 11 - ( int_Sum % 11); + + System.out.print("The HKID is: " + strHKID[0] + str.substring(1,7)); + if (int_Code == 11) { + System.out.println("(0)"); + } else if(int_Code == 10) { + System.out.println("(A)"); + } else { + System.out.println( "(" + int_Code + ")" ); + } + + } +} \ No newline at end of file