Реферат: Исследование и моделирование с помощью компьютера электрических полей
If (CalcA=True) then begin
Vx:=0; Vy:=0;
For I:=1 to Nc do begin
Dx:=(Qrc[I,1]-X)/25*StrToFloat(Form2.Edit2.Text);
Dy:=(Qrc[I,2]-Y)/25*StrToFloat(Form2.Edit2.Text);
Deg:=Sqrt(Dx*Dx+Dy*Dy);
Deg:=Deg*Deg*Deg;
If Deg=0 then Exit;
Vx:=Vx+(9*10E9*(Qrc[I,3])*StrToFloat(Form2.Edit1.Text)*Dx/Deg/StrToFloat(Form2.Edit3.Text));
Vy:=Vy+(9*10E9*(Qrc[I,3])*StrToFloat(Form2.Edit1.Text)*Dy/Deg/StrToFloat(Form2.Edit3.Text));
end;
N:=Sqrt(Vx*Vx+Vy*Vy);
Form3.Label7.Caption:= FloatToStr(N);
Form3.Label2.Caption:= FloatToStr(RealPotenc(X,Y));
If Vx<>0 then begin
T:=180*ArcTan(-Vy/Vx)/Pi;
If (Vy>=0) and (Vx>0) then T:=T+180 else
If (Vy<0) and (Vx>0) then T:=T+180 else
If (Vy<0) and (Vx<0) then T:=T+360;
end else If Vy>0 then T:=90 else T:=270;
Form3.Label10.Caption:=FloatToStr(T);
With Form3 do begin
Label1.Left:=Label7.Left+Label7.Width+5;
Label3.Left:=Label2.Left+Label2.Width+5;
Label11.Left:=Label10.Left+Label10.Width+2;
If Label1.Left+Label1.Width>Label3.Left+Label3.Width then Form3.Width:=Label1.Left+Label1.Width+20 else Form3.Width:=Label3.Left+Label3.Width+20;
end;
Form3.Show;
end;