@@ -0,0 +1,31 @@
+program prec;
+
+uses SysUtils;
+var
+ i:Integer;
+ v: Double;
+ s: string;
+begin
+ v := 1.0000000000001;
+ for i := 1 to 20 do
+ begin
+ s := FloatToStrF(v, ffGeneral, i, 0);
+ WriteLn(i, ' ', s);
+ if (i < 13) then
+ if (s <> '1') then
+ writeln('error');
+ halt(1);
+ end;
+ end
+ else
+ if (s <> '1.0000000000001') then
+end.