Q&A

  • 숫자의 한글변환
합계금액을 한글로 변환할수있는 방법 좀 알려주세요



예) 123000



일십이만삼천원정 이렇게말입니다.

1  COMMENTS
  • Profile
    xdelphi 2001.01.12 23:08
    누리 wrote:

    > 합계금액을 한글로 변환할수있는 방법 좀 알려주세요

    >

    > 예) 123000

    >

    > 일십이만삼천원정 이렇게말입니다.





    다음함수를 사용하시면 되거든요

    늘...행복하시고.....



    function Amount_kor(N: Longint): String;

    const

    Units: array[0..9] of String = ('', '일', '이', '삼', '사', '오',

    '육', '칠', '팔', '구');

    Lower: array[0..3] of String = ('', '십','백','천');

    Higher: array[0..4] of String = ('', '만','억','조','경');

    HighLevel: Integer = 0;

    begin

    case N of

    0..9: Result := Result + Units[N];

    10..99:

    Result := Result +

    Amount_kor(N div 10) + Lower[1] + Amount_kor(N mod 10);

    100..999:

    Result := Result +

    Amount_kor(N div 100) + Lower[2] + Amount_kor(N mod 100);

    1000..9999:

    Result := Result +

    Amount_kor(N div 1000) + Lower[3] + Amount_kor(N mod 1000);

    else

    begin

    inc(HighLevel);

    Result := Result +

    Amount_kor(N div 10000) + Higher[HighLevel] + Amount_kor(N mod 10000);

    dec(HighLevel);

    end;

    end;

    end;



    //함수사용예제....

    procedure TF117.Button4Click(Sender: TObject);

    begin

    try

    ShowMessage(Amount_kor(Trunc(StrToFloat(Edit2.Text))));

    except

    on EConvertError do

    ShowMessage('정확한 숫자를 입력하세요');

    end;

    end;