Elem f-ja izgleda ovako:
function StrToReal( arg : string ) : real;
var rez : real;
i : integer;
levo, desno : string;
li, di : real;
zarez : integer;
begin
zarez := pos('.', arg);
if zarez = 0 then
begin
rez := StrToInt(arg);
Result := rez;
end;
levo := '';
for i := 1 to zarez-1 do
levo := levo + arg;
desno := '';
for i := zarez +1 to length(arg) do
desno := desno + arg;
li := StrToint(levo);
di := StrToInt(desno);
while di > 1 do
di := di/10;
rez := li + di;
Result := rez;
end;
negde u kodu funkcija se poziva sa
kolicina := StrToReal(Edit1.Text); {kolicina je tipa real}
gde je TEXT = '0.53';
Zasto ovo ne valja?
zato sto kolicina ima vrednost 0.5299999137 iako se lepo u dibageru vidi da je rez := 0.53...
Ima li neko ideju o cemu se ovde radi i kako ovo prevazici?