RMB

来源:互联网 发布:徐老师的淘宝店叫啥 编辑:程序博客网 时间:2024/04/29 17:47
unit func;interfaceuses SysUtils, Classes,Dialogs,shellapi, ComCtrls,dbtables,BDE;function RMB(NN:real):string;implementationfunction RMB(NN:real):string;var  HZ,NS,NW,NA,N1,N2:string;  LA,X,Nk:integer;begin if NN>9999999999999.99 then begin  MessageDlg('金额溢出.',mtError,[mbOk], 0);  HZ:='';  Result:=HZ;  exit; end; if NN=0 then begin  HZ:='零元';  result:=HZ;  exit; end; NS:='零壹贰叁肆伍陆柒捌玖'; NW:='分角元拾佰仟万拾佰仟亿拾佰仟万'; NA:=FloatToStr(NN*100); LA:=length(NA); X:=1; HZ:=''; while X<=LA do begin NK:=Ord(NA[x])-Ord('0'); N1:=Copy(NS,NK*2+1,2); N2:=Copy(NW,LA*2+1-X*2,2); if (NK=0) AND ((N2='亿') OR( N2='万') OR( N2='元'))then begin  if copy(HZ,Length(HZ)-1,2)='零' then   HZ:=copy(HZ,1,length(HZ)-2);  if copy(HZ,Length(HZ)-1,2)='亿' then   if N2='元' then   begin    N1:=N2;    N2:='零';   end   else    N2:=''  else  begin   N1:=N2;   N2:='零';  end end else if NK=0 then      begin       if copy(HZ,length(HZ)-1,2)='零' then        N1:='';       if N2='分' then       begin        if copy(HZ,length(HZ)-1,2)='零' then         HZ:=copy(HZ,1,length(HZ)-2)+'整'        else         HZ:=HZ+'整';         N1:='';       end;       N2:='';      end;  HZ:=HZ+N1+N2;  X:=X+1 end; Result:=HZ;end;end.

0 0