//////////网友写的///////////// function xTOd(i:Real):string; const d='零壹贰叁肆伍陆柒捌玖分角元拾佰仟万拾佰仟亿'; var m,k:string; j:integer; begin k:=''; m:=floattostr(int(i*100)); for j:=length(m) downto 1 do k:=k+d[(strtoint(m[Length(m)-j+1])+1)*2-1]+ d[(strtoint(m[Length(m)-j+1])+1)*2]+d[(10+j)*2-1]+d[(10+j)*2]; xTOd:=k; end; procedure TForm1.Button1Click(Sender: TObject); begin // sum:=12.34; showmessage('人民币大写:'+xTod(strtofloat(edit1.text))); end;
//////////网友写的///////////// unit rmb;interfacefunction NumToUpper(const num:real):string;implementation uses SysUtils;function NumToUpper(const num:real):string; var aa,bb,cc:string; bbb:array[1..16]of string; uppna:array[0..9] of string; i:integer; begin bbb[1]:='万'; bbb[2]:='仟'; bbb[3]:='佰'; bbb[4]:='拾'; bbb[5]:='亿';; bbb[6]:='仟';; bbb[7]:='佰'; bbb[8]:='拾'; bbb[9]:='万'; bbb[10]:='仟'; bbb[11]:='佰'; bbb[12]:='拾'; bbb[13]:='元'; bbb[14]:='.'; bbb[15]:='角'; bbb[16]:='分'; uppna[1]:='壹'; uppna[2]:='贰'; uppna[3]:='叁'; uppna[4]:='肆'; uppna[5]:='伍'; uppna[6]:='陆'; uppna[7]:='柒'; uppna[8]:='捌'; uppna[9]:='玖'; Str(num:16:2,aa); cc:=''; bb:=''; result:=''; for i:=1 to 16 do begin cc:=aa[i]; if cc<>' ' then begin bb:=bbb[i]; if cc='0' then cc:='零' else begin if cc='.' then begin cc:=''; bb:=''; end else begin cc:=uppna[StrToInt(cc)]; end end; result:=result+(cc+bb) end; end; result:=result+'正'; end;end.
function xTOd(i:Real):string;
const
d='零壹贰叁肆伍陆柒捌玖分角元拾佰仟万拾佰仟亿';
var
m,k:string;
j:integer;
begin
k:='';
m:=floattostr(int(i*100));
for j:=length(m) downto 1 do
k:=k+d[(strtoint(m[Length(m)-j+1])+1)*2-1]+
d[(strtoint(m[Length(m)-j+1])+1)*2]+d[(10+j)*2-1]+d[(10+j)*2];
xTOd:=k;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
// sum:=12.34;
showmessage('人民币大写:'+xTod(strtofloat(edit1.text)));
end;
unit rmb;interfacefunction NumToUpper(const num:real):string;implementation
uses SysUtils;function NumToUpper(const num:real):string;
var aa,bb,cc:string;
bbb:array[1..16]of string;
uppna:array[0..9] of string;
i:integer;
begin bbb[1]:='万';
bbb[2]:='仟';
bbb[3]:='佰';
bbb[4]:='拾';
bbb[5]:='亿';;
bbb[6]:='仟';;
bbb[7]:='佰';
bbb[8]:='拾';
bbb[9]:='万';
bbb[10]:='仟';
bbb[11]:='佰';
bbb[12]:='拾';
bbb[13]:='元';
bbb[14]:='.';
bbb[15]:='角';
bbb[16]:='分';
uppna[1]:='壹';
uppna[2]:='贰';
uppna[3]:='叁';
uppna[4]:='肆';
uppna[5]:='伍';
uppna[6]:='陆';
uppna[7]:='柒';
uppna[8]:='捌';
uppna[9]:='玖';
Str(num:16:2,aa);
cc:='';
bb:='';
result:='';
for i:=1 to 16 do
begin
cc:=aa[i];
if cc<>' ' then
begin
bb:=bbb[i];
if cc='0' then
cc:='零'
else
begin
if cc='.' then
begin
cc:='';
bb:='';
end
else
begin
cc:=uppna[StrToInt(cc)];
end
end;
result:=result+(cc+bb)
end;
end;
result:=result+'正';
end;end.