Internal error

Здравствуйте.Сегодня при написании кода и попытке его компилировать, столкнулся с такой проблемой: Internal error: C1091Собственно, сам код:
unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, math, Controls, Forms,
 Dialogs, StdCtrls, ExtCtrls;

type
 TForm1 = class(TForm)
 Label1: TLabel;
 Label2: TLabel;
 Label3: TLabel;
 Edit1: TEdit;
 Edit2: TEdit;
 Edit3: TEdit;
 RadioGroup1: TRadioGroup;
 Button1: TButton;
 Label4: TLabel;
 Label5: TLabel;
 Label6: TLabel;
 Label7: TLabel;
 Label8: TLabel;
 Label9: TLabel;
 Label10: TLabel;
 Label11: TLabel;
 procedure Button1Click(Sender: TObject);
 private
 { Private declarations }
 public
 { Public declarations }
 end;

var
 Form1: TForm1;
 i,N,a,b,s,q,c,sum,y,x,E,r,f,w,z:real;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
a:=1;
b:=2;
s:=2;
q:=1;
c:=0;
sum:=0;
y:=0;

if RadioGroup1.ItemIndex=0 then
 begin
 x:=strtofloat(edit1.Text);
 N:=strtofloat(edit2.text);
 if (x>-1) and (x<1) then
 begin
 for i:=1 to N do
 begin
 r:=power(x, s);
 f:=a/b;
 q:=q+a*r;
 a:=a+2;
 b:=b+2;
 f:=f*(a/b);
 end;
 w:=1/sqrt(1+sqr(x));
 label5.Caption:=floattostrF(w,ffgeneral,5,2);
 label7.Caption:=floattostrF(f,ffgeneral,5,2);
 end
 else
 ShowMessage('Тру-ля-ля');
 end;

if RadioGroup1.ItemIndex=1 then
 begin
 x:=strtofloat(edit1.Text);
 E:=strtofloat(edit3.Text);
 if (x>-1) and (x<1) then
 begin
 for i:=1 to N do
 begin
 s:=2;
 r:=power(x, s);
 f:=a/b;
 y:=abs(a*r);
 if y>E then
 begin
 sum:=sum+1;
 c:=c+1;
 end;
 q:=q+a*r;
 a:=a+2;
 b:=b+2;
 f:=f*(a/b);
 end;
 w:=1/sqrt(1-sqr(x));
 label5.Caption:=floattostrF(w,ffgeneral,5,2);
 label9.Caption:=floattostrF(sum,ffgeneral,5,2);
 label11.Caption:=floattostrF(c,ffgeneral,5,2);
 end
 else
 ShowMessage('Тру-ля-ля');
 end;

end.
1 ответ

Ты не закрыл тело процедуры.