نمایش نتایج 1 تا 5 از 5

نام تاپیک: تبدیل اعداد اعشار به حروف

Threaded View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #1

    Post تبدیل اعداد اعشار به حروف

    با سلام و خسته نباشید
    از دوستان خواهش میکنم مشکل این کد رو بهم بگن الان 4 روزه گرفتارم
    اجرکم من الله
    فایل ضمیمه شده

    unit HoroofUnit;


    interface
    function Add2Harf(i:int64):string;


    implementation


    function Add2Harf(i:int64):string;
    //function AliHgethoroof(i:Extended):string;
    const v=' و ';
    var
    ok:boolean;
    j:Int64;


    {___________________________________}
    function yekan(y:byte):string;
    begin
    case y of
    0:result:='';
    1:result:='One';
    2:result:='Two';
    3:result:='Three';
    4:result:='Four';
    5:result:='Five';
    6:result:='Six';
    7:result:='Seven';
    8:result:='Eight';
    9:result:='Nine';
    enD;
    if result=''then ok:=false else ok:=true;
    end;
    {___________________________________}
    function dahgan(y:byte):string;
    begin
    case y of
    0:result:='';
    1:result:='Ten';
    2:result:='Twenty';
    3:result:='Thirty';
    4:result:='Fourty';
    5:result:='Fifty';
    6:result:='Sixty';
    7:result:='Seventy';
    8:result:='Eighty';
    9:result:='Ninety';
    enD;
    if result=''then ok:=false else ok:=true;
    end;
    {___________________________________}
    function sadgan(y:byte):string;
    begin
    case y of
    0:result:='';
    1:result:='One Hundred';
    2:result:='Two Hundred';
    3:result:='Three Hundred';
    4:result:='Four Hundred';
    5:result:='Five Hundred';
    6:result:='Six Hundred';
    7:result:='Seven Hundred';
    8:result:='Eight Hundred';
    9:result:='Nine Hundred';
    enD;
    if result=''then ok:=false else ok:=true;
    end;
    {___________________________________}
    function dah(y:byte):string;
    begin
    case y of
    0:result:='';
    10:result:='Ten';
    11:result:='Eleven';
    12:result:='Twelve';
    13:result:='Thirteen';
    14:result:='Fourteen';
    15:result:='Fifteen';
    16:result:='Sixteen';
    17:result:='Seventeen';
    18:result:='Eighteen';
    19:result:='Nineteen';
    enD;
    if result=''then ok:=false else ok:=true;
    end;
    {___________________________________}
    function seragham(si:smallint):string;
    begin
    result:='';
    result:=sadgan(si div 100);
    if ok then result:=result+v;

    if((si mod 100)div 10)<>1 then begin
    result:=result+dahgan((si mod 100)div 10);
    if ok then result:=result+v;
    result:=result+yekan(si mod 10);
    if not ok then result:=copy(result,1,length(result)-3);
    End
    else begin
    result:=result+dah(si mod 100);
    end;
    if result='' then ok:=false else ok:=true;
    end;
    {___________________________________}
    const
    I_tr=' Trillion';
    I_mr=' Milliard';
    I_ml=' Million';
    I_hz=' Thousand';


    FloatPoint: array [1..7] of String = (' ???',' ???',' ?????',' ?? ?????',' ?? ?????',' ????????',' ?? ????????');
    var
    jj: String;


    begin


    ok:=false;
    if pos('.',FloatToStr(i)) <> 0 then
    jj := copy( FloatToStr(i),1,pos('.',FloatToStr(i))-1)
    else jj := FloatToStr(i);
    j := StrToInt64Def(jj,0);
    result:=seragham(j div 1000000000000);
    if ok then result:=result+I_tr+v;
    result:=result+seragham((j mod 1000000000000)div 1000000000);
    if ok then result:=result+I_mr+v;
    result:=result+seragham((j mod 1000000000)div 1000000);
    if ok then result:=result+I_ml+v;
    result:=result+seragham((j mod 1000000)div 1000);
    if ok then result:=result+I_hz+v;
    result:=result+seragham(j mod 1000);
    if not ok then result:=copy(result,1,length(result)-3);

    if pos('.',FloatToStr(i)) <> 0 then begin
    Result := Result + ' مميز ';
    jj := copy( FloatToStr(i),pos('.',FloatToStr(i))+1,100);
    j := StrToInt64Def(jj,0);

    result:=result + seragham(j div 1000000000000);
    if ok then result:=result+I_tr+v;
    result:=result+seragham((j mod 1000000000000)div 1000000000);
    if ok then result:=result+I_mr+v;
    result:=result+seragham((j mod 1000000000)div 1000000);
    if ok then result:=result+I_ml+v;
    result:=result+seragham((j mod 1000000)div 1000);
    if ok then result:=result+I_hz+v;
    result:=result+seragham(j mod 1000);
    if not ok then result:=copy(result,1,length(result);-3);

    Result := Result + FloatPoint[length(JJ)];


    end;


    if i=0 then result:='Ziro';
    end;
    end.
    فایل های ضمیمه فایل های ضمیمه
    آخرین ویرایش به وسیله JASEM128 : پنج شنبه 17 فروردین 1396 در 01:58 صبح

تاپیک های مشابه

  1. چه جوري مييشه كه اعداد رو به حروف تبديل كنيم
    نوشته شده توسط mojahed.morteza در بخش Access
    پاسخ: 9
    آخرین پست: سه شنبه 04 تیر 1392, 01:56 صبح
  2. تبدیل اعداد اعشار به صحیح
    نوشته شده توسط siavash82ir در بخش PHP
    پاسخ: 5
    آخرین پست: چهارشنبه 14 مهر 1389, 23:16 عصر
  3. تبدیل اعداد اعشاری به حروف
    نوشته شده توسط reza_moridi در بخش برنامه نویسی در Delphi
    پاسخ: 3
    آخرین پست: دوشنبه 26 بهمن 1383, 14:27 عصر
  4. تبدیل اعداد اعشاری به حروف
    نوشته شده توسط reza_moridi در بخش برنامه نویسی در Delphi
    پاسخ: 2
    آخرین پست: یک شنبه 25 بهمن 1383, 18:43 عصر
  5. تبدیل مبلغ عددی به حروف
    نوشته شده توسط shsoft در بخش برنامه نویسی در 6 VB
    پاسخ: 10
    آخرین پست: دوشنبه 07 اردیبهشت 1383, 16:47 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •