주민등록번호 알고리즘 알아보기.
임의로 번호를 만드세요.
800310-182014X
처음 6자리는 생일입니다. YYMMDD (년월일) 형식이고요.
그러므로 802068 이런 식의 첫자리는 나오지 못하겠지요?
20월과 68일은 없으니까요.
두번째 숫자들중 처음 숫자는 성별(1,3:남자, 2,4:여자) 입니다
1,2 는 1900년 방식이고, 3,4 는 2000년 방식입니다. 별로 차이는 없고요.
나머지 5자리는, 지역 출생지 등등 여러가지를 의미하고, 생성하기 위해선 아무렇게나 임의로 지정해 주어도 무관합니다.
마지막 X가 구해야 하는 값입니다. X는 특정 계산에 의해서 계산되는데,
그 X는 아무 의미 없는 단지 계산된 값일 뿐입니다. 하지만 사실상 가장 중요한 값이죠.
그럼 X를 한번 구해봅시다.
800310-182014X
이런 식으로 만들어진 임의의 번호에서,
800310-182014X
234567 892345
위에것과 아래것을 곱해줍니다. 2에서 5까지 써 넣은것은 계산하는 방법이 원래 그렇습니다.
이왕이면 0 이많을수록 좋겟죠? 계산하기 편하니깐..
그럼 8*2 는 16, 0*3은 =0.....
그리고 다 더해줍니다.
16 + 0 + 0 + 15 + 6 + 0 + 8 + 72 + 4 + 0 + 4 + 20 = 145
다 더한값(145) 를 11 로 나누면,
145 / 11 = 13 나머지 2
여기서 중요한것은, 몫이 아니라 나머지 입니다.
11에서 나머지를 빼면, 그값이 X입니다.
11-2 = 9
X=9
결국 800310-1820149 가 되는거죠.
아주 복잡하진 않지만, 상당히 이상한 계산이군요, 왜 하필 11을 택햇을까..
주민등록번호 생성기를 사용해도 되지만, 아무데서나 하나 만들고 싶을때,
주민등록생성기를 받지 못할때, 사용하면 아주 편리합니다. :)
혹시 이 계산이 귀찮으신분은, 가입할때 주민등록을 필요로하는 아무 싸이트나 들어가셔서(네이버도 됩니다. 단 만 18세 이하로만)
주민등록번호를 800310-182014 까지만 입력하고, 마지막 숫자를
0부터 9 까지 일일이 대입하다보면, "잘못된 주민등록번호입니다"가 아닌
"가입을 계속하십시오" 등의 메세지가 뜨면, 그 번호가 마지막 X입니다
사실 이방법이 더 빠르긴 합니다. 하지만 알고리즘을 아는것이 더 재미잇겟죠?
※주의 : 절대 오용하지 마세요 :)※
댓글 0
로그인하면 댓글을 작성할 수 있습니다.