Q&A

  • 나이 계산하는 방법에 대하여 알고 싶습니다
먼저 죄송하다는 말씀을 관리자분에게 하고 싶습니다.

게시판을 다 본 후에 질문을 하고 싶었는데 시간도 없구 너무 많은 자료가 있어서 검토를 하지 못했습니다.

주민등록번호로 나이 계산하는 방법과, 숫자 천단위를 나눠주는 소스를 알고 싶습니다.

답변 꼭 부탁드리고요, 앞으로도 데이타베이스에 대해 질문을 많이 할 것 같습니다.

감사합니다.

2  COMMENTS
  • Profile
    Mr.Q 2000.04.24 04:12
    이인숙 wrote:

    > 먼저 죄송하다는 말씀을 관리자분에게 하고 싶습니다.

    > 게시판을 다 본 후에 질문을 하고 싶었는데 시간도 없구 너무 많은 자료가 있어서 검토를 하지 못했습니다.

    > 주민등록번호로 나이 계산하는 방법과, 숫자 천단위를 나눠주는 소스를 알고 싶습니다.

    > 답변 꼭 부탁드리고요, 앞으로도 데이타베이스에 대해 질문을 많이 할 것 같습니다.

    > 감사합니다.





    '720324-10113124'

    - 일단 첫 숫자가 어떻게 시작되는지를 알아내야합니다.

    1,2면 1900년대이고, 1800년대 태생이 어떻게 되는지?.. 2000년 태생이면, 3,4인가요?



    var

    iCmp, iAge, iADate, iTodayDate:integer;

    sTmpDate:string

    begin

    iCmp:=StrToInt(copy('720324-10113124',8,1));



    case iCmp of

    1,2: begin

    sTmpDate:=copy(주민등록번호,1,2);

    iADate:=StrToInt('19'+sTmpDate);

    end;

    3,4: begin

    sTmpDate:=copy(주민등록번호,1,2);

    iADate:=StrToInt('20'+sTmpDate);

    end;



    iTodayDate:=StrToInt(FormatDateTime('YYYY',Date));



    iAge:=iTodayDate-iADate+1; //나이



    숫자를 천단위로..는 것은 FormatFloat를 쓰시면 됩니다.

    FormatFloat('###,###,###,###', 1234567890) -> 1,234,567,890

    이런 포맷문자에서, 0을 나타내려면, '###,##0' 이런식으로 해야합니다.

    소수의 경우는, '###,##0.00'이런식으로 나갑니다. '#,###E-0'이런 포맷도 있고..





  • Profile
    이인숙 2000.04.26 00:09
    Mr.Q wrote:

    > 이인숙 wrote:

    > > 먼저 죄송하다는 말씀을 관리자분에게 하고 싶습니다.

    > > 게시판을 다 본 후에 질문을 하고 싶었는데 시간도 없구 너무 많은 자료가 있어서 검토를 하지 못했습니다.

    > > 주민등록번호로 나이 계산하는 방법과, 숫자 천단위를 나눠주는 소스를 알고 싶습니다.

    > > 답변 꼭 부탁드리고요, 앞으로도 데이타베이스에 대해 질문을 많이 할 것 같습니다.

    > > 감사합니다.

    >

    >

    > '720324-10113124'

    > - 일단 첫 숫자가 어떻게 시작되는지를 알아내야합니다.

    > 1,2면 1900년대이고, 1800년대 태생이 어떻게 되는지?.. 2000년 태생이면, 3,4인가요?

    >

    > var

    > iCmp, iAge, iADate, iTodayDate:integer;

    > sTmpDate:string

    > begin

    > iCmp:=StrToInt(copy('720324-10113124',8,1));

    >

    > case iCmp of

    > 1,2: begin

    > sTmpDate:=copy(주민등록번호,1,2);

    > iADate:=StrToInt('19'+sTmpDate);

    > end;

    > 3,4: begin

    > sTmpDate:=copy(주민등록번호,1,2);

    > iADate:=StrToInt('20'+sTmpDate);

    > end;

    >

    > iTodayDate:=StrToInt(FormatDateTime('YYYY',Date));

    >

    > iAge:=iTodayDate-iADate+1; //나이

    >

    > 숫자를 천단위로..는 것은 FormatFloat를 쓰시면 됩니다.

    > FormatFloat('###,###,###,###', 1234567890) -> 1,234,567,890

    > 이런 포맷문자에서, 0을 나타내려면, '###,##0' 이런식으로 해야합니다.

    > 소수의 경우는, '###,##0.00'이런식으로 나갑니다. '#,###E-0'이런 포맷도 있고..

    >

    > 감사합니다.

    내일은 공포의 CIH바이러스가 활동하는 날.

    그로인해 조금은 바뻐서(?) 답변을 이제서야 보게 되었습니다. 근데 전 이제 델파이를 접한 이라서 FormatDateTime나 FormatFloat를 어떻게 활용해야하는지 조금은 어렵습니다.

    edit에서 입력값을 받아 label로 출력을 할려고 합니다.

    그러면 function을 정의해야 하는 건지, 좀 자세히 가르쳐 주시면 정말 감사하겠습니다.