rocedure TForm13.savepu;
var
numkao:integer;
sbinge:string;
flonum:real;
begin
flonum:=strToFloat(thingsname.Text)/numkao;
sbinge:=formatFloat('0.'+stringOfChar('0',2),flonum);
function roundformat(digit:integer;vardata:Real):Real;
var intvardata:Real;
pointchar:Real;
strvar,strvar1:string;
i:integer;
changedata:Real;
fuhao:integer;
begin
if (vardata<0) then fuhao:=-1 else fuhao:=1;
vardata:=abs(vardata);
intvardata:=int(vardata);//取整部分
pointchar:=Frac(vardata);//小数部分
strvar:=FloatToStr(pointchar);
strvar:=copy(strvar,1,digit+3);
if length(strvar)<digit+3 then
for i:=1 to digit+3-length(strvar) do strvar:=strvar+'0';
strvar1:=strvar;
setlength(strvar,digit+1);
pointchar:=strtofloat(strvar);
strvar:=strvar1;
if strvar<>'' then
begin
if StrToInt(strvar[length(strvar)])>=5 then
begin
if strvar1[length(strvar1)-1]='.' then
begin
changedata:=StrToInt(strvar1[length(strvar1)-2])+1;
strvar:=Floattostr(changedata);
end else
begin
changedata:=strtoFloat(strvar[length(strvar)-1])+1;
for i:=1 to digit do changedata:=changedata*0.1;
pointchar:=pointchar+changedata;
strvar:=FloatToStr(pointchar);
end;
end else
begin
if strvar[length(strvar)-1]='.' then strvar:='0' else
strvar:=copy(strvar,1,length(strvar)-1);
end;
if strvar<>'' then pointchar:=StrToFloat(Strvar) else pointchar:=0;
Result:=(intvardata+pointchar)*fuhao;
end else
begin
Result:=intvardata;
for i:=1 to digit do
if i=1 then result:=(StrToFloat(FloatToStr(intvardata)+'.0'))*fuhao else
result:=(StrToFloat(FloatToStr(intvardata)+'0'))*fuhao;
end;
end;