Just for Java Learning
25개 이상의 토픽을 선택하실 수 없습니다. Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

36 lines
936 B

  1. package tutorial;
  2. import java.util.Scanner;
  3. public class ValidateHKID {
  4. public static void main(String[] args) {
  5. Scanner input = new Scanner(System.in);
  6. System.out.println("Please enter your first 7 character of your HKID card number.");
  7. String str = input.nextLine();
  8. char[] strHKID;
  9. int sum;
  10. int code;
  11. strHKID = str.toCharArray();
  12. strHKID[0] = Character.toUpperCase(strHKID[0]);
  13. sum = ( (int)strHKID[0] -64 ) *8;
  14. sum = sum + ( (int)strHKID[1] -48 ) *7;
  15. sum = sum + ( (int)strHKID[2] -48 ) *6;
  16. sum = sum + ( (int)strHKID[3] -48 ) *5;
  17. sum = sum + ( (int)strHKID[4] -48 ) *4;
  18. sum = sum + ( (int)strHKID[5] -48 ) *3;
  19. sum = sum + ( (int)strHKID[6] -48 ) *2;
  20. code = 11 - ( sum % 11);
  21. System.out.print("The HKID is: " + strHKID[0] + str.substring(1,7));
  22. if (code == 11) {
  23. System.out.println("(0)");
  24. } else if(code == 10) {
  25. System.out.println("(A)");
  26. } else {
  27. System.out.println( "(" + code + ")" );
  28. }
  29. }
  30. }