
23.05.2014, 10:45
|
Местный
|
|
Регистрация: 09.11.2010
Сообщения: 499
Репутация: 10
|
|
Более правильно как-то так
Код:
function Poten
(
x,y:extended; // координаты пробной точки
xq,yq:extended; // координаты заряда
q:extended; // заряд
):extended;
var
r : extended;
begin
r:=sqrt(sqr(x-xq)+sqr(y-yq));
Result:=q/r;
end;
const // заменить на нужные значения зарядов
Q1 = 1;
Q2 = 1;
Q3 = 1;
Q4 = 1;
procedure TForm1.Button1Click(Sender: TObject);
var
x,y:integer;
p:extended;
begin
for x:=0 to 100 do
begin
for y:=0 to 100 do
begin
p:=
Poten(x,y,100,100,Q1) +
Poten(x,y,100, 0,Q2) +
Poten(x,y, 0,100,Q3) +
Poten(x,y, 0, 0,Q4) ;
if p>0 then
begin
Image1.Canvas.Pixels[x,y] := clWhite;
end
else
begin
Image1.Canvas.Pixels[x,y] := clBlack;
end;
end;
end;
end;
|