Ich habe ein seltsames Problem, wie der Titel schon sagt beim Klicken auf den Button2 kommt immer die Fehlermeldung "Invalid floating point operation".
Meine Variablen:
Delphi-Quellcode:
var
Form1: TForm1;
i,j: Integer;
Bst,b: Extended;
Das hier ist der Quellcode zu Button2:
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
begin
memo2.text:='';
for i:=1 to length(memo1.text) do
begin
Bst:=strtofloat(memo1.text[i]+memo1.text[i+1]+memo1.text[i+2]);
b:=Bst;
for j:=2 to strtoint(edit3.text) do
begin
Bst:=Bst*b;
end;
Bst:=Bst - (Trunc(Bst / strtoint(edit2.text)) * strtoint(edit2.text));
memo2.text:=memo2.text + chr(strtoint(floattostr(Bst)));
end;
end;
Der Fehler scheint in dieser Zeile zu sein,
Bst:=Bst - (Trunc(Bst / strtoint(edit2.text)) * strtoint(edit2.text));
denn ohne sie läuft das Programm ohne Fehlermeldung.
Jedoch das seltsame ist die Zeile
Bst:=Bst - (Trunc(Bst / strtoint(edit2.text)) * strtoint(edit2.text));
habe ich auch bei Button1 verwendet, jedoch kommt da keine Fehlermeldung
Quellcode Button1:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
memo2.text:='';
for i:=1 to length(memo1.text) do
begin
Bst:=ord(memo1.text[i]);
b:=Bst;
for j:=2 to strtoint(edit1.text) do
begin
Bst:=Bst*b;
end;
Bst:=Bst - (Trunc(Bst / strtoint(edit2.text)) * strtoint(edit2.text));
if Bst <100 then
begin
if Bst < 10 then
begin
memo2.text:=memo2.text + '00' + floattostr(Bst);
end
else
begin
memo2.text:=memo2.text + '0' + floattostr(Bst);
end;
end
else
begin
memo2.text:=memo2.text + floattostr(Bst);
end;
end;
end;
Ich hoffe ihr könnt mir weiterhelfen. Deshalb schonmal danke im voraus
Euer St0rmhunter