[fpc-pascal] DateToStr in arm does not work!
josepascual
josepascual at almudi.com
Wed Jul 4 13:48:09 CEST 2007
> > If this program compiles and works fine:
> > program floattest;
> >
> > uses sysutils;
> > var a,b:double;
> >
> > begin
> > a:=0.5;
> > b:=0.3;
> > writeln(format('%5.3f',[a*b]));
> >
> > end.
> >
> >
> >
> > can I assume that either my compiler has been built with the right
> > options or I have a working fpu?
>
> yes.
>
> > I'm asking because jose original test program fails here, while the
> > above program correctly prints out 0.150
>
> does the above work if you set a or be to a negative number? my
> softfloat crashes with writeln(negative number).
negative number problem is not in float operation but in format or strings
subsystem.
try this new example:
program floattest;
uses sysutils;
var a,b,c,d,e:double;
begin
a:=0.5;
b:=0.3;
writeln(format('%5.3f',[a*b]));
a:=-0.5;
c:=a*b;
d:=a*c;
writeln(format('%5.3f',[d]));
if (c < 0) then
begin
// e := abs(c); seems not to work! please remove // and try it
e := -1*c; // remove or comment if you use abs in above line
writeln('-'+format('%5.3f',[e]));
end;
end.
perhaps, I think now, part of problem can be in something relative abs or
used by abs.
comment your results,
regards
Jose Pascual
More information about the fpc-pascal
mailing list