Here is my test project. I have a form with two edit boxes and a button. User puts any number into edit1, clicks the button and the reciprocal of that number is put into edit2.
procedure TForm1.Button1Click(Sender: TObject);
var x,y:double;
s1:string;
begin
x:=strtofloat(edit1.Text);
try
y:=1/x;
s1:= floattostrf(y,ffexponent,6,2)
except
s1:='can not calc';
end;
edit2.text:=s1;
end;
If edit1 contains 0.0 edit2 displays +.nf.
I haven't tested it with Delphi because I've been trapping divide-by-zero errors with Delphi since V1.0 and it works.